<SEC-DOCUMENT>0001193125-20-286931.txt : 20201105
<SEC-HEADER>0001193125-20-286931.hdr.sgml : 20201105
<ACCEPTANCE-DATETIME>20201105165128
ACCESSION NUMBER:		0001193125-20-286931
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		88
CONFORMED PERIOD OF REPORT:	20200930
FILED AS OF DATE:		20201105
DATE AS OF CHANGE:		20201105

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

	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>d945763d10q.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8" ?>
<html xmlns:rgen="http://www.repligencorp.com/20200930" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:dei="http://xbrl.sec.gov/dei/2019-01-31" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:deprecated="http://www.xbrl.org/2009/arcrole/deprecated" xmlns:country="http://xbrl.sec.gov/country/2017-01-31" xmlns:currency="http://xbrl.sec.gov/currency/2019-01-31" xmlns:exch="http://xbrl.sec.gov/exch/2019-01-31" xmlns:naics="http://xbrl.sec.gov/naics/2017-01-31" xmlns:sic="http://xbrl.sec.gov/sic/2011-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2018-01-31" xmlns:us-gaap="http://fasb.org/us-gaap/2019-01-31" xmlns:xl="http://www.xbrl.org/2003/XLink" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:srt="http://fasb.org/srt/2019-01-31" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:xbrll="http://www.xbrl.org/2003/linkbase" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>10-Q</title>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/>
</head>
<body style="">
 <div style='display: none'><ix:header><ix:hidden><ix:nonNumeric name="dei:AmendmentFlag" contextRef="P01_01_2020To09_30_2020">false</ix:nonNumeric><ix:nonNumeric name="dei:DocumentFiscalPeriodFocus" contextRef="P01_01_2020To09_30_2020">Q3</ix:nonNumeric><ix:nonNumeric name="dei:EntityCentralIndexKey" contextRef="P01_01_2020To09_30_2020">0000730272</ix:nonNumeric><ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="hidden15372903" contextRef="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MinimumMembersrtRangeAxis">P3Y</ix:nonNumeric><ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="hidden15372906" contextRef="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MaximumMembersrtRangeAxis">P5Y</ix:nonNumeric><ix:nonNumeric name="dei:CurrentFiscalYearEndDate" contextRef="P01_01_2020To09_30_2020">--12-31</ix:nonNumeric><ix:nonNumeric name="dei:EntityAddressStateOrProvince" id="hidden15360727" contextRef="P01_01_2020To09_30_2020">MA</ix:nonNumeric><ix:footnote id="FN_57221" xml:lang="en-US">Represents the number of vested options as of September 30, 2020 plus the number of unvested options expected to vest as of September 30, 2020 based on the unvested outstanding options at September 30, 2020 adjusted for estimated forfeiture rates of 8% for awards granted to non-executive level employees and 3% for awards granted to executive level employees.</ix:footnote ><ix:footnote id="FN_57222" xml:lang="en-US">Represents the number of vested stock units as of September 30, 2020 plus the number of unvested stock units expected to vest as of September 30, 2020 based on the unvested outstanding stock units at September 30, 2020 adjusted for estimated forfeiture rates of 8% for awards granted to non-executive level employees and 3% for awards granted to executive level employees.</ix:footnote ></ix:hidden><ix:references><link:schemaRef xlink:type="simple" xlink:href="rgen-20200930.xsd" /><link:linkbaseRef xlink:type="simple" xlink:href="rgen-20200930_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" /><link:linkbaseRef xlink:type="simple" xlink:href="rgen-20200930_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" /><link:linkbaseRef xlink:type="simple" xlink:href="rgen-20200930_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" /><link:linkbaseRef xlink:type="simple" xlink:href="rgen-20200930_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" /></ix:references><ix:resources><xbrli:context id="P01_01_2020To09_30_2020" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2019" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2019-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn07_19_2019" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2019-07-19</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn05_03_2019" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2019-05-03</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P07_19_2019To07_19_2019" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </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="P05_03_2019To05_03_2019" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-05-03</xbrli:startDate> <xbrli:endDate>2019-05-03</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To12_31_2019" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-12-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2019" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2019-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn11_02_2020" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-11-02</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P04_01_2020To06_30_2020" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-04-01</xbrli:startDate> <xbrli:endDate>2020-06-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To03_31_2020" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-03-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn06_30_2020" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-06-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2018" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2018-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn06_30_2019" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2019-06-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn03_31_2020" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-03-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:CTechnologiesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_NonExecutiveMembersrtTitleOfIndividualAxis_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_ExecutiveOfficerMembersrtTitleOfIndividualAxis_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_NonExecutiveMembersrtTitleOfIndividualAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_ExecutiveOfficerMembersrtTitleOfIndividualAxis" > <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" >srt:ExecutiveOfficerMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_MinimumMembersrtRangeAxis_PrincipalOwnerMemberusgaapRelatedPartyTransactionsByRelatedPartyAxis_SpectrumIncMembersrtOwnershipAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_TrademarksMemberusgaapIndefiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:TrademarksMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" > <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:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:CTechnologiesMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:CTechnologiesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_TrademarksAndTradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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:CTechnologiesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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:CTechnologiesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_StockOptionAndIncentivePlanMemberusgaapPlanNameAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_FairValueInputsLevel1MemberusgaapFairValueByFairValueHierarchyLevelAxis_MoneyMarketFundsMemberusgaapCashAndCashEquivalentsAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_TradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:TradeNamesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_GoodwillMemberusgaapFairValueByAssetClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:CTechnologiesMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis" >us-gaap:GoodwillMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_GoodwillMemberusgaapFairValueByAssetClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis" >us-gaap:GoodwillMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2019_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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>2019-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2019_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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>2019-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2019_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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>2019-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2019_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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>2019-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2019_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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>2019-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2019_TrademarksMemberusgaapIndefiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:TrademarksMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2019-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2019_FairValueInputsLevel1MemberusgaapFairValueByFairValueHierarchyLevelAxis_MoneyMarketFundsMemberusgaapCashAndCashEquivalentsAxis" > <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>2019-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_CostOfSalesMemberusgaapIncomeStatementLocationAxis" > <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>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis" > <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>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis" > <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>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:NorthAmericaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:EuropeMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >rgen:ApacOtherMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <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> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <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>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_ProductMembersrtProductOrServiceAxis" > <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>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_RoyaltyMembersrtProductOrServiceAxis" > <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>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" > <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>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <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>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:CTechnologiesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" > <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>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_NGLImpactAMembersrtProductOrServiceAxis_ResearchAndDevelopmentArrangementMemberusgaapLongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis" >rgen:NGLImpactAMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" >us-gaap:ResearchAndDevelopmentArrangementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2020To09_30_2020_SpectrumIncMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:SpectrumIncMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-07-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_CostOfSalesMemberusgaapIncomeStatementLocationAxis" > <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>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis" > <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>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis" > <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>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:NorthAmericaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:EuropeMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >rgen:ApacOtherMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <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> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MilliporeSigmaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >rgen:MilliporeSigmaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <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>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" > <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>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <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>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_ProductMembersrtProductOrServiceAxis" > <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>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_RoyaltyMembersrtProductOrServiceAxis" > <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>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_01_2019To09_30_2019_MilliporeSigmaMembersrtMajorCustomersAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >rgen:MilliporeSigmaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-07-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_CostOfSalesMemberusgaapIncomeStatementLocationAxis" > <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>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis" > <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>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis" > <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>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:NorthAmericaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:EuropeMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >rgen:ApacOtherMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <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> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MilliporeSigmaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >rgen:MilliporeSigmaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:CTechnologiesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" > <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>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MinimumMembersrtRangeAxis_ShareBasedCompensationAwardTrancheOneMemberusgaapVestingAxis" > <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:RangeAxis" >srt:MinimumMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:VestingAxis" >us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MaximumMembersrtRangeAxis_ShareBasedCompensationAwardTrancheOneMemberusgaapVestingAxis" > <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:RangeAxis" >srt:MaximumMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:VestingAxis" >us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_NonEmployeeDirectorStockOptionMemberusgaapAwardTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis" >rgen:NonEmployeeDirectorStockOptionMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_UnvestedOptionsMemberusgaapAwardTypeAxis" > <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>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MinimumMembersrtRangeAxis" > <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:RangeAxis" >srt:MinimumMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MaximumMembersrtRangeAxis" > <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:AwardTypeAxis" >us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <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>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_ProductMembersrtProductOrServiceAxis" > <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>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_RoyaltyMembersrtProductOrServiceAxis" > <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>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" > <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>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <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>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" > <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>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_MilliporeSigmaMembersrtMajorCustomersAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >rgen:MilliporeSigmaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_EarliestTaxYearMemberusgaapTaxPeriodAxis_USsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:US</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis" >us-gaap:EarliestTaxYearMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_LatestTaxYearMemberusgaapTaxPeriodAxis_USsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:US</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis" >us-gaap:LatestTaxYearMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_EarliestTaxYearMemberusgaapTaxPeriodAxis_SEsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:SE</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis" >us-gaap:EarliestTaxYearMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_LatestTaxYearMemberusgaapTaxPeriodAxis_SEsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:SE</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis" >us-gaap:LatestTaxYearMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_DEsrtStatementGeographicalAxis_LatestTaxYearMemberusgaapTaxPeriodAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:DE</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis" >us-gaap:LatestTaxYearMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_EarliestTaxYearMemberusgaapTaxPeriodAxis_NLsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:NL</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis" >us-gaap:EarliestTaxYearMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_LatestTaxYearMemberusgaapTaxPeriodAxis_NLsrtStatementGeographicalAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >country:NL</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis" >us-gaap:LatestTaxYearMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_NGLImpactAMembersrtProductOrServiceAxis_ResearchAndDevelopmentArrangementMemberusgaapLongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis" >rgen:NGLImpactAMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" >us-gaap:ResearchAndDevelopmentArrangementMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <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>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_TradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:TradeNamesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_AccountsReceivableMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_CytivaMembersrtMajorCustomersAxis" > <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="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:AccountsReceivableMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >rgen:CytivaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_TrustForBenefitOfEmployeesMembersrtTitleOfIndividualAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis" >us-gaap:TrustForBenefitOfEmployeesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_TrustForBenefitOfEmployeesMembersrtTitleOfIndividualAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis" >us-gaap:TrustForBenefitOfEmployeesMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:CTechnologiesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2020To09_30_2020_SpectrumIncMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:SpectrumIncMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-01-01</xbrli:startDate> <xbrli:endDate>2020-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_CostOfSalesMemberusgaapIncomeStatementLocationAxis" > <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>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis" > <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>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis" > <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>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:CTechnologiesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:NorthAmericaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >srt:EuropeMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis" >rgen:ApacOtherMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <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> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_CytivaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >rgen:CytivaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MilliporeSigmaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >rgen:MilliporeSigmaMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis" >us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:SalesRevenueNetMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <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>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" > <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>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <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>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_ProductMembersrtProductOrServiceAxis" > <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>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_RoyaltyMembersrtProductOrServiceAxis" > <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>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" > <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>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_CytivaMembersrtMajorCustomersAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >rgen:CytivaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To09_30_2019_MilliporeSigmaMembersrtMajorCustomersAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >rgen:MilliporeSigmaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-09-30</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn07_31_2019_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2019-07-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn07_31_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" > <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="PAsOn06_30_2020_TrustForBenefitOfEmployeesMembersrtTitleOfIndividualAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis" >us-gaap:TrustForBenefitOfEmployeesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-06-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P05_31_2019To12_31_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:CTechnologiesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-05-31</xbrli:startDate> <xbrli:endDate>2019-12-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To12_31_2019_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-12-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To12_31_2019_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-12-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To12_31_2019_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-12-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To12_31_2019_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-12-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To12_31_2019_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <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:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-12-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P01_01_2019To12_31_2019_AccountsReceivableMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_CytivaMembersrtMajorCustomersAxis" > <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="us-gaap:ConcentrationRiskByBenchmarkAxis" >us-gaap:AccountsReceivableMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="srt:MajorCustomersAxis" >rgen:CytivaMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-01-01</xbrli:startDate> <xbrli:endDate>2019-12-31</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_19_2019To07_19_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_UnderwriterMembersrtTitleOfIndividualAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis" >rgen:UnderwriterMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:CommonStockMember</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="P07_19_2019To07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" > <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="P07_19_2019To07_19_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</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="PAsOn07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" > <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="PAsOn07_16_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2019-07-16</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P07_22_2019To07_22_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" > <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> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-07-22</xbrli:startDate> <xbrli:endDate>2019-07-22</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P07_22_2019To07_22_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-07-22</xbrli:startDate> <xbrli:endDate>2019-07-22</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn07_22_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2019-07-22</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P09_01_2019To09_23_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-09-01</xbrli:startDate> <xbrli:endDate>2019-09-23</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="P09_01_2019To09_23_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:CommonStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-09-01</xbrli:startDate> <xbrli:endDate>2019-09-23</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_23_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2019-09-23</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P05_03_2019To05_03_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_UnderwriterMembersrtTitleOfIndividualAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis" >rgen:UnderwriterMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:CommonStockMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2019-05-03</xbrli:startDate> <xbrli:endDate>2019-05-03</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2018_StockOptionAndIncentivePlanMemberusgaapPlanNameAxis" > <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="PAsOn09_30_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" > <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:instant>2019-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2019_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis" >rgen:ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2019-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-07-13</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn07_13_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-07-13</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn07_13_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-07-13</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_TrademarksAndTradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-07-13</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis" >us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-07-13</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="P10_27_2020To10_27_2020_ArtesynBiosolutionsMemberusgaapBusinessAcquisitionAxis_SubsequentEventMemberusgaapSubsequentEventTypeAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis" >rgen:ArtesynBiosolutionsMember</xbrldi:explicitMember> <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis" >us-gaap:SubsequentEventMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2020-10-27</xbrli:startDate> <xbrli:endDate>2020-10-27</xbrli:endDate> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn06_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <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>2020-06-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn06_30_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" > <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>2020-06-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn06_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <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>2020-06-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn06_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" > <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>2020-06-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <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>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn06_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" > <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>2019-06-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn06_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <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>2019-06-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn06_30_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" > <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>2019-06-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn06_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <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>2019-06-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" > <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>2019-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <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>2019-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" > <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>2019-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <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>2019-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" > <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:instant>2019-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2019_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2019-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn09_30_2020_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" > <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000730272</xbrli:identifier> <xbrli:segment> <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis" >us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:instant>2020-09-30</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" > <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>2019-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <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>2019-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" > <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>2019-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <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>2019-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2018_CommonStockMemberusgaapStatementEquityComponentsAxis" > <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>2018-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2018_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" > <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>2018-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2018_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" > <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>2018-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:context id="PAsOn12_31_2018_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" > <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>2018-12-31</xbrli:instant> </xbrli:period> </xbrli:context><xbrli:unit id="Unit_USD" > <xbrli:measure>iso4217:USD</xbrli:measure> </xbrli:unit><xbrli:unit id="Unit_shares" > <xbrli:measure>xbrli:shares</xbrli:measure> </xbrli:unit><xbrli:unit id="Unit_pure" > <xbrli:measure>xbrli:pure</xbrli:measure> </xbrli:unit><xbrli:unit id="Unit_Year" > <xbrli:measure>utr:Year</xbrli:measure> </xbrli:unit><xbrli:unit id="Unit_USD_per_Share" > <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="Unit_Segment" > <xbrli:measure>rgen:Segment</xbrli:measure> </xbrli:unit><ix:relationship fromRefs="Fact_15357651" toRefs="FN_57221"/><ix:relationship fromRefs="Fact_15357652" toRefs="FN_57221"/><ix:relationship fromRefs="Fact_15357653" toRefs="FN_57221"/><ix:relationship fromRefs="Fact_15357663" toRefs="FN_57222"/><ix:relationship fromRefs="Fact_15357669" toRefs="FN_57222"/><ix:relationship fromRefs="Fact_15357671" toRefs="FN_57222"/></ix:resources></ix:header></div><div> <div style="font-size: 13.28px; margin-top: 0pt; margin-bottom: 1.67em; line-height: 12pt;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto; overflow: hidden;"> <div style="line-height: 1pt; margin-top: 0pt; margin-bottom: 0pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;"></div> <div style="line-height: 3pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 18pt; font-weight: normal; margin-top: 4pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">UNITED STATES </div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 18pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">SECURITIES AND EXCHANGE COMMISSION </div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 12pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">Washington, D.C. 20549 </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center;"> <div style="margin: 0pt auto 2pt; width: 21%; text-align: center; line-height: 6pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 18pt; font-weight: normal; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;">FORM <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:DocumentType" contextRef="P01_01_2020To09_30_2020">10-Q</ix:nonNumeric></div> </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center;"> <div style="margin: 0pt auto 2pt; width: 21%; text-align: center; line-height: 6pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 12pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><ix:nonNumeric name="dei:DocumentQuarterlyReport" contextRef="P01_01_2020To09_30_2020" format="ixt:booleantrue">&#9746;</ix:nonNumeric></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 12pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934 </div></div></div> </td> </tr> </table> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">For the quarterly period ended <ix:nonNumeric name="dei:DocumentPeriodEndDate" contextRef="P01_01_2020To09_30_2020" format="ixt:datemonthdayyearen">September 30, <ix:nonNumeric name="dei:DocumentFiscalYearFocus" contextRef="P01_01_2020To09_30_2020">2020</ix:nonNumeric></ix:nonNumeric> </div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">OR </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 12pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><ix:nonNumeric name="dei:DocumentTransitionReport" contextRef="P01_01_2020To09_30_2020" format="ixt:booleanfalse">&#9744;</ix:nonNumeric></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 12pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934 </div></div></div> </td> </tr> </table> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;">For the transition period from <div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;</div><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;</div><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</div><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;</div> to <div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;</div><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;</div><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</div><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">&#160;&#160;&#160;&#160;</div> </div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;">Commission File Number <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:EntityFileNumber" contextRef="P01_01_2020To09_30_2020">000-14656</ix:nonNumeric></div> </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center;"> <div style="margin: 0pt auto 2pt; width: 21%; text-align: center; line-height: 6pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 24pt; font-weight: normal; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 24pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:EntityRegistrantName" contextRef="P01_01_2020To09_30_2020">REPLIGEN CORP</ix:nonNumeric>ORATION </div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">(Exact Name of Registrant as Specified in its Charter) </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center;"> <div style="margin: 0pt auto 2pt; width: 21%; text-align: center; line-height: 6pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 50%; font-family: &quot;Times New Roman&quot;;"></td>
<td style="width: 1%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"></td>
<td style="width: 48%; font-family: &quot;Times New Roman&quot;;"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><ix:nonNumeric name="dei:EntityIncorporationStateCountryCode" contextRef="P01_01_2020To09_30_2020" format="ixt-sec:stateprovnameen">Delaware</ix:nonNumeric></div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:EntityTaxIdentificationNumber" contextRef="P01_01_2020To09_30_2020">04-2729386</ix:nonNumeric></div></div></div></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: top;;text-align:center;"> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">(State or Other Jurisdiction of</div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Incorporation or Organization)</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:center;"> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">(I.R.S. Employer</div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Identification No.)</div></div></div> </td> </tr> </table> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 50%; font-family: 'Times New Roman';"></td>
<td style="width: 1%; vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="width: 48%; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;;text-align:center;"> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:EntityAddressAddressLine1" contextRef="P01_01_2020To09_30_2020">41 Seyon Street, Bldg. 1, Suite 100</ix:nonNumeric></div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 1pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="dei:EntityAddressCityOrTown" contextRef="P01_01_2020To09_30_2020">Waltham</ix:nonNumeric>, <span style="-sec-ix-hidden:hidden15360727">MA</span></div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><ix:nonNumeric name="dei:EntityAddressPostalZipCode" contextRef="P01_01_2020To09_30_2020">02453</ix:nonNumeric></div></div></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Address of Principal Executive Offices)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Zip Code)</div></div></td> </tr> </table> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">(<ix:nonNumeric name="dei:CityAreaCode" contextRef="P01_01_2020To09_30_2020">781</ix:nonNumeric>)&#160;<ix:nonNumeric name="dei:LocalPhoneNumber" contextRef="P01_01_2020To09_30_2020">250-0111</ix:nonNumeric></div> </div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Registrant&#8217;s Telephone Number, Including Area Code </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center;"> <div style="margin: 0pt auto 2pt; width: 21%; text-align: center; line-height: 6pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Securities registered pursuant to Section&#160;12(b) of the Act: </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 34%; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="width: 32%; font-family: 'Times New Roman';"></td>
<td style="width: 1%; vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="width: 32%; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; white-space: nowrap;;text-align:center;"> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: inline-block; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Title of each class</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:center;"> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: inline-block; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Trading Symbol(s)</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:center;"> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: inline-block; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Name of each exchange on which registered</div></div></div> </td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><ix:nonNumeric name="dei:Security12bTitle" contextRef="P01_01_2020To09_30_2020">Common Stock</ix:nonNumeric>, par value $0.01 per share</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><ix:nonNumeric name="dei:TradingSymbol" contextRef="P01_01_2020To09_30_2020">RGEN</ix:nonNumeric></div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><ix:nonNumeric name="dei:SecurityExchangeName" contextRef="P01_01_2020To09_30_2020" format="ixt-sec:exchnameen">The Nasdaq Global Select Market</ix:nonNumeric></div></div></td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Indicate by check mark whether the registrant (1)&#160;has filed all reports required to be filed by Section&#160;13 or 15 (d)&#160;of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2)&#160;has been subject to such filing requirements for the past 90 days.&#160;&#160;&#160;&#160;<ix:nonNumeric name="dei:EntityCurrentReportingStatus" contextRef="P01_01_2020To09_30_2020">Yes</ix:nonNumeric>&#160;&#160;&#9746;&#160;&#160;&#160;&#160;No&#160;&#160;&#9744; </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">S-T</div> (&#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).&#160;&#160;&#160;&#160;<ix:nonNumeric name="dei:EntityInteractiveDataCurrent" contextRef="P01_01_2020To09_30_2020">Yes</ix:nonNumeric>&#160;&#160;&#9746;&#160;&#160;&#160;&#160;No&#160;&#160;&#9744;</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-accelerated</div> filer, a smaller reporting company, or an emerging growth company. See the definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company&#8221; and &#8220;emerging growth company&#8221; in Rule <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">12b-2</div> of the Exchange Act.:</div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 17%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 57%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 21%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 2%;"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;"><ix:nonNumeric name="dei:EntityFilerCategory" contextRef="P01_01_2020To09_30_2020" format="ixt-sec:entityfilercategoryen">Large accelerated filer</ix:nonNumeric></td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;">&#9746;</td>
<td style="vertical-align: bottom;">&#160;&#160;</td>
<td style="vertical-align: bottom;">Accelerated&#160;filer</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;">&#9744;</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt;"></td>
<td colspan="2" style="height: 6pt;"></td>
<td colspan="2" style="height: 6pt;"></td>
<td colspan="2" style="height: 6pt;"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;">Non-accelerated filer</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;">&#9744;</td>
<td style="vertical-align: bottom;">&#160;&#160;</td>
<td style="vertical-align: bottom;">Smaller&#160;reporting&#160;company</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;"><ix:nonNumeric name="dei:EntitySmallBusiness" contextRef="P01_01_2020To09_30_2020" format="ixt:booleanfalse">&#9744;</ix:nonNumeric></td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt;"></td>
<td colspan="2" style="height: 6pt;"></td>
<td colspan="2" style="height: 6pt;"></td>
<td colspan="2" style="height: 6pt;"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;"></td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;"></td>
<td style="vertical-align: bottom;">&#160;&#160;</td>
<td style="vertical-align: bottom;">Emerging&#160;growth&#160;company</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;"><ix:nonNumeric name="dei:EntityEmergingGrowthCompany" contextRef="P01_01_2020To09_30_2020" format="ixt:booleanfalse">&#9744;</ix:nonNumeric></td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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&#160;13(a) of the Exchange Act.&#160;&#160;&#9744;</div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">Indicate by check mark whether the registrant is a shell company (as defined in Rule <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">12b-2</div> of the Exchange Act.):&#160;&#160;&#160;&#160;Yes&#160;&#160;&#9744;&#160;&#160;&#160;&#160;No&#160;&#160;<ix:nonNumeric name="dei:EntityShellCompany" contextRef="P01_01_2020To09_30_2020" format="ixt:booleanfalse">&#9746;</ix:nonNumeric></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The number of shares outstanding of the registrant&#8217;s common stock on November&#160;2, 2020 was <ix:nonFraction name="dei:EntityCommonStockSharesOutstanding" contextRef="PAsOn11_02_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">52,619,271</ix:nonFraction>. </div></div> <div style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="line-height: 1pt; margin-top: 0pt; margin-bottom: 0pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="line-height: 3pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div id="toc" style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Table of Contents </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 7%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 89%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">PAGE</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td colspan="3" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td colspan="3" style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_1">PART&#160;I - FINANCIAL INFORMATION </a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Item&#160;1.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_2">Financial Statements (interim periods unaudited)</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_3">Consolidated Balance Sheets as of September&#160;30, 2020 and December&#160;31, 2019</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">3</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_4">Consolidated Statements of Comprehensive Income (Loss) for the Three and Nine Months Ended September&#160;30, 2020 and 2019</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">4</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_5">Consolidated Statements of Stockholders&#8217; Equity for the Three and Nine Months Ended September&#160;30, 2020 and 2019</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">5</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_6">Consolidated Statements of Cash Flows for the Nine Months Ended September&#160;30, 2020 and 2019</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">7</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_7">Notes to Unaudited Consolidated Financial Statements</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">8</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Item&#160;2.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_8">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">28</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Item&#160;3.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_9">Quantitative and Qualitative Disclosures About Market Risk</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">40</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Item&#160;4.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_10">Controls and Procedures</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">41</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td colspan="3" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td colspan="3" style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_11">PART&#160;II - OTHER INFORMATION </a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Item&#160;1.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_12">Legal Proceedings</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">42</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Item&#160;1A.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_13">Risk Factors</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">42</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Item&#160;2.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_14">Unregistered Sales of Equity Securities and Use of Proceeds</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">42</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Item&#160;3.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_15">Defaults Upon Senior Securities</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">42</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Item&#160;4.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_16">Mine Safety Disclosures</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">42</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Item&#160;5.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_17">Other Information</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">42</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Item&#160;6.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_18">Exhibits</a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">43</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1pt;">
<td colspan="3" style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="4" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td colspan="3" style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><a href="#tx945763_19">Signatures </a></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">44</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr> </table> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"></div> </div> </div> </div> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div id="tx945763_1" style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">PART I &#8211; FINANCIAL INFORMATION </div></div></div> <div style="font-size: 6pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 6pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td id="tx945763_2" style="width: 10%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">ITEM&#160;1.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Financial Statements </div></div></div> </td> </tr> </table> <div id="tx945763_3" style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">REPLIGEN CORPORATION </div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">CONSOLIDATED BALANCE SHEETS </div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">(Unaudited, amounts in thousands, except share data) </div></div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 82%; font-family: &quot;Times New Roman&quot;;"></td>
<td style="width: 1%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="width: 1%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,<br/> 2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,<br/> 2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Assets</div></div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Current assets:</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash and cash equivalents</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">553,302</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">528,392</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Restricted cash</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RestrictedCash" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">9,015</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts receivable, net of allowances of $<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">621</ix:nonFraction> and $<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">525</ix:nonFraction> at September&#160;30, 2020 and December&#160;31, 2019, respectively</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">55,830</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">43,068</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Royalties and other receivables</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OtherReceivablesGrossCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">95</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OtherReceivablesGrossCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">148</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Unbilled receivables</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:UnbilledReceivablesCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">456</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Inventories, net</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">78,531</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">54,832</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Prepaid expenses and other current assets</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">8,970</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">5,917</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 82%;"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total current assets</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AssetsCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">696,728</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AssetsCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">641,828</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Property, plant and equipment, net</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">55,355</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">48,455</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible assets, net</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">215,385</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">212,552</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Goodwill</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:Goodwill" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">482,043</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:Goodwill" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">468,413</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred tax assets</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">2,192</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">2,920</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease right of use assets</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">24,201</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">25,707</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other assets</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OtherAssetsNoncurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">412</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OtherAssetsNoncurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">238</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 82%;"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total assets</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:Assets" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,476,316</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:Assets" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,400,113</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 82%;"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Liabilities and Stockholders&#8217; Equity</div></div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Current liabilities:</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts payable</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">14,483</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">11,425</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">4,460</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,557</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued liabilities</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">32,041</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">33,331</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 82%;"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total current liabilities</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">50,984</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">48,313</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Convertible senior notes, net</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConvertibleLongTermNotesPayable" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">240,942</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConvertibleLongTermNotesPayable" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">232,767</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred tax liabilities</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAndOtherLiabilitiesNoncurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">29,435</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredTaxAndOtherLiabilitiesNoncurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">29,944</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability, long-term</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">26,378</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">26,995</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other liabilities, long-term</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OtherLiabilitiesNoncurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,707</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OtherLiabilitiesNoncurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">2,326</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 82%;"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total liabilities</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:Liabilities" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">351,446</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:Liabilities" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">340,345</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:CommitmentsAndContingencies" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" xsi:nil="true"></ix:nonFraction></td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 82%;"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Commitments and contingencies (Note 10)</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;"><ix:nonFraction name="us-gaap:CommitmentsAndContingencies" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" xsi:nil="true"></ix:nonFraction></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Stockholders&#8217; equity:</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Preferred stock, $<ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="PAsOn12_31_2019" unitRef="Unit_USD_per_Share" decimals="INF" scale="0" format="ixt:numdotdecimal"><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="PAsOn09_30_2020" unitRef="Unit_USD_per_Share" decimals="INF" scale="0" format="ixt:numdotdecimal">0.01</ix:nonFraction></ix:nonFraction> par value, <ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="PAsOn12_31_2019" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal"><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="PAsOn09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">5,000,000</ix:nonFraction></ix:nonFraction> shares authorized, <ix:nonFraction name="us-gaap:PreferredStockSharesIssued" contextRef="PAsOn12_31_2019" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:PreferredStockSharesOutstanding" contextRef="PAsOn09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:PreferredStockSharesOutstanding" contextRef="PAsOn12_31_2019" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:PreferredStockSharesIssued" contextRef="PAsOn09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt-sec:numwordsen">no</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction> shares issued or outstanding</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"><ix:nonFraction name="us-gaap:PreferredStockValue" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" xsi:nil="true"></ix:nonFraction>&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"><ix:nonFraction name="us-gaap:PreferredStockValue" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" xsi:nil="true"></ix:nonFraction>&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Common stock, $<ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="PAsOn12_31_2019" unitRef="Unit_USD_per_Share" decimals="INF" scale="0" format="ixt:numdotdecimal"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="PAsOn09_30_2020" unitRef="Unit_USD_per_Share" decimals="INF" scale="0" format="ixt:numdotdecimal">0.01</ix:nonFraction></ix:nonFraction> par value; <ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" contextRef="PAsOn12_31_2019" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" contextRef="PAsOn09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">80,000,000</ix:nonFraction></ix:nonFraction> shares authorized; <ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="PAsOn09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="PAsOn09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">52,606,700</ix:nonFraction></ix:nonFraction> shares at September&#160;30, 2020 and <ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="PAsOn12_31_2019" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="PAsOn12_31_2019" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">52,078,258</ix:nonFraction></ix:nonFraction> shares at December&#160;31, 2019 issued and outstanding</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CommonStockValue" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">526</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CommonStockValue" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">521</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;">Additional <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">paid-in</div> capital</div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AdditionalPaidInCapitalCommonStock" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,087,996</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AdditionalPaidInCapitalCommonStock" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,068,431</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accumulated other comprehensive loss</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">9,723</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">15,027</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Retained</div> earnings</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">46,071</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">5,843</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 82%;"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total stockholders&#8217; equity</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,124,870</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,059,768</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 82%;"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; width: 82%;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total liabilities and stockholders&#8217; equity</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,476,316</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,400,113</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 82%;"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; width: 1%;">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The accompanying notes are an integral part of these consolidated financial statements. </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">3 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"></div> </div> </div> </div> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div id="tx945763_4" style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">REPLIGEN CORPORATION </div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) </div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">(Unaudited, amounts in thousands, except per share data) </div></div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 72%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Products</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P07_01_2020To09_30_2020_ProductMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">94,029</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P07_01_2019To09_30_2019_ProductMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">69,419</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2020To09_30_2020_ProductMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">257,521</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2019To09_30_2019_ProductMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">200,701</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Royalty and other revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P07_01_2020To09_30_2020_RoyaltyMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">31</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P07_01_2019To09_30_2019_RoyaltyMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">26</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2020To09_30_2020_RoyaltyMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">91</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2019To09_30_2019_RoyaltyMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">70</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">94,060</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">69,445</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">257,612</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">200,771</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Costs and operating expenses:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cost of product revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">39,626</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">31,425</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">108,471</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">88,978</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Research and development</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">4,422</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">5,427</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">13,460</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">14,278</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Selling, general and administrative</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:SellingGeneralAndAdministrativeExpense" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">29,051</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:SellingGeneralAndAdministrativeExpense" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">24,629</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:SellingGeneralAndAdministrativeExpense" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">83,277</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:SellingGeneralAndAdministrativeExpense" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">67,326</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total costs and operating expenses</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CostsAndExpenses" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">73,099</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CostsAndExpenses" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">61,481</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CostsAndExpenses" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">205,208</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CostsAndExpenses" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">170,582</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Income from operations</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">20,961</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">7,964</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">52,404</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">30,189</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other income (expenses):</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Investment income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:InvestmentIncomeNet" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">82</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:InvestmentIncomeNet" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,898</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:InvestmentIncomeNet" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,699</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:InvestmentIncomeNet" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,616</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Loss on extinguishment of debt</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:GainsLossesOnExtinguishmentOfDebt" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">5,650</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:GainsLossesOnExtinguishmentOfDebt" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">5,650</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Interest expense</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:InterestExpense" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,052</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:InterestExpense" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">2,857</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:InterestExpense" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">9,032</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:InterestExpense" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">6,326</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other (expenses) income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">248</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">316</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">632</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">23</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other expenses, net</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">3,218</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">6,293</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">7,965</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">8,383</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Income before income taxes</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">17,743</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,671</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">44,439</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">21,806</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Income tax provision</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,191</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">12</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">4,211</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,999</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">14,552</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,659</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">40,228</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">17,807</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Earnings per share:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Basic</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.28</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.03</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.77</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.38</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Diluted</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.27</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.03</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.75</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.37</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Weighted average common shares outstanding:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Basic</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">52,545</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">50,852</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">52,341</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">47,087</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Diluted</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">53,469</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">51,809</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">53,300</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">47,930</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">14,552</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,659</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">40,228</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">17,807</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other comprehensive income (loss):</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Foreign currency translation adjustment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">4,390</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">6,741</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">5,304</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">9,901</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Comprehensive income (loss)</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">18,942</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">5,082</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">45,532</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">7,906</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The accompanying notes are an integral part of these consolidated financial statements. </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">4 </div></div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"></div> </div> </div> </div> </div> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div id="tx945763_5" style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">REPLIGEN CORPORATION </div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">CONSOLIDATED STATEMENTS OF STOCKHOLDERS&#8217; EQUITY </div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">(Unaudited, amounts in thousands, except share data) </div></div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 52%;"></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="22" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended&#160;September&#160;30,&#160;2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Common Stock</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Additional</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Paid-</div></div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">In&#160;Capital</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Other<br/> Comprehensive</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Loss</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Retained<br/> Earnings</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Total</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Stockholders&#8217;</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Equity</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Number&#160;of</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Shares</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Par</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at December&#160;31, 2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="PAsOn12_31_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">52,078,258</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn12_31_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">521</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn12_31_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,068,431</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn12_31_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">15,027</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn12_31_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">5,843</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,059,768</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P01_01_2020To09_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">40,228</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">40,228</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Exercise of stock options and vesting of stock units</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" contextRef="P01_01_2020To09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">528,442</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="P01_01_2020To09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">5</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="P01_01_2020To09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">7,073</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">7,078</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Stock-based compensation expense</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="P01_01_2020To09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">12,492</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">12,492</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Translation adjustment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" contextRef="PAsOn12_31_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">5,304</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">5,304</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance as of September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="PAsOn09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">52,606,700</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">526</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,087,996</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">9,723</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">46,071</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,124,870</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 52%;"></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="22" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended&#160;September&#160;30,&#160;2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Common Stock</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Additional</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Paid-</div></div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">In&#160;Capital</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Other<br/> Comprehensive</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Loss</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Retained<br/> Earnings</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Total</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Stockholders&#8217;</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Equity</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Number&#160;of</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Shares</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Par</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at June&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="PAsOn06_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">52,494,884</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn06_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">525</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn06_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,082,096</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn06_30_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">14,113</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn06_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">31,519</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn06_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,100,027</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P07_01_2020To09_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">14,552</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">14,552</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Exercise of stock options and vesting of stock units</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" contextRef="P07_01_2020To09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">111,816</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="P07_01_2020To09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="P07_01_2020To09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,675</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,676</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Stock-based compensation expense</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="P07_01_2020To09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">4,225</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">4,225</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Translation adjustment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" contextRef="PAsOn06_30_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">4,390</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" contextRef="PAsOn06_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">4,390</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance as of September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="PAsOn09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">52,606,700</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">526</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,087,996</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">9,723</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">46,071</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,124,870</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 48%;"></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="22" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended&#160;September&#160;30,&#160;2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Common Stock</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Additional</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Paid-</div></div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">In&#160;Capital</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Other<br/> Comprehensive</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Loss</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Retained<br/> Earnings/<br/> (Accumulated<br/> Deficit)</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Total</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Stockholders&#8217;</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Equity</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Number&#160;of</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Shares</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Par</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at December&#160;31, 2018</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="PAsOn12_31_2018_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">43,917,378</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn12_31_2018_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">439</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn12_31_2018_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">642,590</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn12_31_2018_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">11,893</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn12_31_2018_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">15,568</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn12_31_2018" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">615,568</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P01_01_2019To09_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">17,807</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">17,807</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Issuance of common stock for debt conversion</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits" contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">2,316,229</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">23</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">198,734</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">198,757</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Reduction for equity component from debt conversion, net of tax</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">200,079</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">200,079</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Exercise of stock options and vesting of stock units</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">311,299</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,055</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,058</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Issuance of common stock pursuant to the acquisition of C Technologies, Inc.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesAcquisitions" contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">779,221</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">8</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">53,930</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">53,938</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Tax withholding on vesting of restricted stock units</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" sign="-" format="ixt:numdotdecimal">3,077</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">290</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">290</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Equity component of <ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="PAsOn09_30_2019_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_pure" decimals="5" scale="-2" format="ixt:numdotdecimal">0.375</ix:nonFraction>% senior convertible notes, net of tax</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt" contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">38,088</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">38,088</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Proceeds from issuance of common stock, net of issuance cost of $<ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">18,607</ix:nonFraction></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">4,731,531</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">48</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">320,665</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">320,713</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Stock-based compensation expense</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">9,459</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">9,459</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Translation adjustment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" contextRef="PAsOn12_31_2018_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">9,901</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" contextRef="PAsOn12_31_2018" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">9,901</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance as of September&#160;30, 2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="PAsOn09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">52,052,581</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">521</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,064,152</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">21,794</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">2,239</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,045,118</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">5 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;">
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 50%;"></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="22" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended&#160;September&#160;30,&#160;2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Common Stock</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Additional</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Paid-</div></div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">In&#160;Capital</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Other<br/> Comprehensive</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Loss</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Retained<br/> Earnings</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" rowspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Total</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Stockholders&#8217;</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Equity</div></div></td>
<td rowspan="2" style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Number&#160;of</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Shares</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Par</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at June&#160;30, 2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="PAsOn06_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">48,086,422</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn06_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">481</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn06_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">892,960</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn06_30_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">15,053</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn06_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">580</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn06_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">878,968</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P07_01_2019To09_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,659</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,659</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Issuance of common stock for debt conversion</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits" contextRef="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">2,316,200</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" contextRef="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">23</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" contextRef="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">198,732</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueConversionOfUnits" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">198,755</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Reduction of equity component from debt conversion, net of tax</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" contextRef="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">200,079</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">200,079</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Exercise of stock options and vesting of stock units</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" contextRef="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">66,036</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">493</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">494</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Tax withholding on vesting of restricted stock units</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" contextRef="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" sign="-" format="ixt:numdotdecimal">3,077</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" contextRef="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">290</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">290</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Equity component of <ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="PAsOn09_30_2019_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_pure" decimals="5" scale="-2" format="ixt:numdotdecimal">0.375</ix:nonFraction>% senior convertible notes, net of tax</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt" contextRef="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">38,088</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">38,088</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Proceeds from issuance of common stock, net of issuance cost of $<ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">6,981</ix:nonFraction></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" contextRef="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">1,587,000</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">16</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">131,073</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">131,089</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Stock-based compensation expense</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,175</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,175</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Translation adjustment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" contextRef="PAsOn06_30_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">6,741</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" contextRef="PAsOn06_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">6,741</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance as of September&#160;30, 2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="PAsOn09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="0" scale="0" format="ixt:numdotdecimal">52,052,581</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">521</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,064,152</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">21,794</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">2,239</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,045,118</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The accompanying notes are an integral part of these consolidated financial statements. </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">6 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"></div> </div> </div> </div> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div id="tx945763_6" style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">REPLIGEN CORPORATION </div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">CONSOLIDATED STATEMENTS OF CASH FLOWS </div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">(Unaudited, amounts in thousands) </div></div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 84%;"></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash&#160;flows&#160;from&#160;operating&#160;activities:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">40,228</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">17,807</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Adjustments to reconcile net income to net cash provided by operating activities:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Depreciation and amortization</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:DepreciationAndAmortization" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">19,581</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:DepreciationAndAmortization" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">14,791</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-cash</div> interest expense</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AmortizationOfDebtDiscountPremium" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">8,175</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AmortizationOfDebtDiscountPremium" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">4,863</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Stock-based compensation expense</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">12,492</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">9,459</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred income taxes, net</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">72</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">9,680</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Loss on extinguishment of debt</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:GainsLossesOnExtinguishmentOfDebt" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">5,650</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OtherNoncashIncomeExpense" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">228</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OtherNoncashIncomeExpense" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">114</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Changes in operating assets and liabilities, excluding impact of acquisitions:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 7em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts receivable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">11,515</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">6,734</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 7em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Royalties and other receivables</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherReceivables" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">157</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherReceivables" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">26</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 7em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Unbilled receivables</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInContractWithCustomerAsset" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">456</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInContractWithCustomerAsset" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">2,047</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 7em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Inventories</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">22,767</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">4,891</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 7em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Prepaid expenses and other assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">2,908</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,075</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 7em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease right of use assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="rgen:IncreasedecreaseInOperatingLeaseRightOfUseAsset" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">2,574</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="rgen:IncreasedecreaseInOperatingLeaseRightOfUseAsset" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">787</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 7em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">260</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">66</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 7em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts payable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayable" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,317</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayable" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">780</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 7em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued expenses</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedLiabilities" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">2,712</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedLiabilities" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">7,263</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 7em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:IncreasedecreaseInOperatingLeaseLiability" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">831</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:IncreasedecreaseInOperatingLeaseLiability" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">607</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 7em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Long-term liabilities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,467</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">10,568</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total cash provided by operating activities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">47,754</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">49,542</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash flows from investing activities:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Acquisitions, net of cash acquired</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">28,445</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">182,154</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Additions to capitalized software costs</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsToAcquireSoftware" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,585</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsToAcquireSoftware" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">4,630</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Purchases of property, plant and equipment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">11,067</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">11,413</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total cash used in investing activities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">43,097</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">198,197</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash flows from financing activities:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Proceeds from exercise</div> of stock options&#160;</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ProceedsFromStockOptionsExercised" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">7,088</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ProceedsFromStockOptionsExercised" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,058</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Payment of tax withholding obligation on vesting of restricted stock</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">10</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">290</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Proceeds from issuance of convertible debt, net</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ProceedsFromConvertibleDebt" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">278,555</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Proceeds from issuance of common stock, net</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfCommonStock" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">320,713</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Repayment of senior convertible notes</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:RepaymentsOfConvertibleDebt" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">114,989</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total cash provided by financing activities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">7,078</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">485,047</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Effect of exchange rate changes on cash, cash equivalents and restricted cash</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">4,160</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">7,785</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net increase in cash, cash equivalents and restricted cash</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">15,895</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">328,607</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash, cash equivalents and restricted cash, beginning of period</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">537,407</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="PAsOn12_31_2018" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">193,822</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash, cash equivalents and restricted cash, end of period</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">553,302</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" contextRef="PAsOn09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">522,429</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;">Supplemental disclosure of <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-cash</div> investing and financing activities:</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Assets acquired under operating leases</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="rgen:AssetsAcquiredUnderOperatingLeases" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,456</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;">$</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fair value of 2,316,229 shares of common stock issued for conversion of convertible notes</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;">$</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:DebtConversionConvertedInstrumentAmount1" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">198,757</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fair value of common stock issued for acquisition of C Technologies, Inc.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;">$</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:StockIssued1" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">53,938</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The accompanying notes are an integral part of these consolidated financial statements. </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">7 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"></div> </div> </div> </div> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div id="tx945763_7" style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">REPLIGEN CORPORATION </div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS </div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">(Unaudited) </div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <ix:nonNumeric name="us-gaap:SignificantAccountingPoliciesTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15358050">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">1.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Summary of Significant Accounting Policies </div></div></div> </td> </tr> </table> <ix:nonNumeric name="us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Basis of Presentation </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The consolidated financial statements included herein have been prepared by Repligen Corporation (the &#8220;Company&#8221;, &#8220;Repligen&#8221; or &#8220;we&#8221;) in accordance with generally accepted accounting principles in the United States (&#8220;GAAP&#8221;) and pursuant to the rules and regulations of the Securities and Exchange Commission (&#8220;SEC&#8221;), for Quarterly Reports on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-Q</div> and Article 10 of Regulation <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">S-X</div> and do not include all of the information and footnote disclosures required by GAAP. These 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 <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K</div> (&#8220;Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K&#8221;)</div> for the fiscal year ended December&#160;31, 2019.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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 period. Actual results could differ from those estimates. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries, Repligen Sweden AB, Repligen GmbH, Spectrum LifeSciences, LLC and its subsidiaries (&#8220;Spectrum&#8221;), C Technologies, Inc. (&#8220;C Technologies&#8221;), Engineered Molding Technology (&#8220;EMT&#8221;) and Repligen Singapore Pte. Ltd. All significant intercompany accounts and transactions have been eliminated in consolidation. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company made no material changes in the application of<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;its</div>&#160;significant accounting policies that were disclosed in its&#160;Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K.</div> In the opinion of management, the accompanying unaudited consolidated financial statements include all adjustments, consisting of only normal, recurring adjustments necessary for a fair presentation of the financial position, results of operations and cash flows. The results of operations for the interim periods presented are not necessarily indicative of results to be expected for the entire year.</div></ix:nonNumeric><ix:nonNumeric name="rgen:RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Risks and Uncertainties </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">The ultimate impact that the current pandemic of the novel coronavirus (&#8220;COVID-19&#8221;), may have on the Company and its customers, employees, suppliers, vendors, business partners and distribution channels is currently unknown. The Company is closely monitoring the impact of this evolving situation on all aspects of its business. While COVID-19 did not materially affect the Company&#8217;s financial results and business operations in the Company&#8217;s three and nine months ended September 30, 2020, the Company is unable to predict the impact that COVID-19 may have on its financial position and operations moving forward due to numerous uncertainties. These estimates may change as new events occur and additional information is obtained, and actual results could differ materially from these estimates under different assumptions or conditions. The Company will continue to assess the evolving impact of COVID-19 and will make adjustments to its operations as necessary.&#160;</div></div></div></ix:nonNumeric><ix:nonNumeric name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15358053"><div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Recent Accounting Standards Updates </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">We consider the applicability and impact of all Accounting Standards Updates on the Company&#8217;s consolidated financial statements. Updates not listed below were assessed and determined to be either not applicable or are expected to have minimal impact on the Company&#8217;s consolidated financial position or results of operations. Recently issued Accounting Standards Updates that we feel may be applicable to the Company are as follows: </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Recently Issued Accounting Standard Updates &#8211; Adopted During the Period </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In August 2018, the Financial Accounting Standards Board (&#8220;FASB&#8221;) issued Accounting Standards Update No. (&#8220;ASU&#8221;) <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13,</div> <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Fair Value Measurement (Topic 820): Disclosure Framework &#8211; Changes to the Disclosure Requirements for Fair Value Measurement.&#8221; </div></div>ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> includes amendments that aim to improve the effectiveness of fair value measurement disclosures. The amendments in this guidance modify the disclosure requirements on fair value measurements based on the concepts in FASB Concepts Statement, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Conceptual Framework for Financial Reporting - Chapter 8: Notes to Financial Statements</div></div>,<div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8221;</div></div> including the consideration of costs and benefits. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> on January&#160;1, 2020. The adoption did not have a material impact on the Company&#8217;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.</div></ix:nonNumeric></ix:nonNumeric> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">8 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelection_15358050"><ix:continuation id="TextSelection_15358053"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;">In August 2018, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-15,</div> <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Intangibles &#8211; Goodwill and Other &#8211; <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Internal-Use</div> Software (Subtopic <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">350-40):</div> Customer&#8217;s Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement That Is a Service Contract.&#8221; </div></div>ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-15</div> aligns the requirements for capitalizing implementation costs incurred in a hosting arrangement that is a service contract with the requirements for capitalizing implementation costs incurred to develop or obtain <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">internal-use</div> software (and hosting arrangements that include an <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">internal-use</div> software license). The guidance also requires the entity to expense the capitalized implementation costs of a hosting arrangement that is a service contract over the term of the hosting arrangement, which includes reasonably certain renewals. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> on January&#160;1, 2020. The adoption did not have a material impact on the Company&#8217;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In June 2016, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13,</div> &#8220;<div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Financial Instruments-Credit Losses (Topic 326).&#8221;</div></div> ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13</div> significantly changes how entities will account for credit losses for most financial assets and certain other instruments that are not measured at fair value through net income. ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13</div> replaces the existing incurred loss model with an expected credit loss model that requires entities to estimate an expected lifetime credit loss on most financial assets and certain other instruments, including short-term trade receivables and contract assets, and expands disclosure requirements for credit quality of financial assets. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13</div> on January&#160;1, 2020. The Company assessed all potential impacts that the adoption of this guidance has on its consolidated financial statements. Based on the composition of the Company&#8217;s investment portfolio, accounts receivable, current market conditions and historical credit loss activity, the adoption of ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13</div> by the Company did not have a material impact on its consolidated financial position, results of operations or cash flows as of and for the three and nine months ended September&#160;30, 2020. The Company continues to monitor processes and controls for indications of an adjustment for future economic conditions at quarterly and annual reporting periods. See Note 5, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Credit Losses,&#8221; </div></div>below for more information on the Company&#8217;s adoption of ASC 326.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In November 2018, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-18,</div> <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Collaborative Arrangements (Topic 808): Clarifying the Interaction between Topic 808 and Topic 606.&#8221; </div></div>ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-18</div> clarifies the interaction between Topic 808, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Collaborative Arrangements,&#8221; </div></div>and Topic 606, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Revenue from Contracts with Customers,&#8221; </div></div>by making targeted improvements to GAAP for collaborative arrangements and providing guidance on whether certain transactions between collaborative arrangement participants should be accounted for with revenue under Topic 606. This includes improving comparability in the presentation of revenue for certain transactions between collaborative arrangement participants by allowing presentation of the units of account in collaborative arrangements that are within the scope of Topic 606 together with revenue accounted for under Topic 606. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> on January&#160;1, 2020. The adoption did not have a material impact on the Company&#8217;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In December 2019, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2019-12,</div> &#8220;<div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Income Taxes (Topic 740) &#8211; Simplifying the Accounting for Income Taxes.&#8221; </div></div>ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2019-12</div> simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740, including, but not limited to, the exception to the incremental approach for intraperiod tax allocation when there is a loss from continuing operations and income or a gain from other items, the exceptions related to the recognition of a deferred tax liability related to an equity method investment and the exception to methodology for calculating income taxes in an interim period when a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">year-to-date</div></div> loss exceeds the anticipated loss for the year. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> on January&#160;1, 2020. The adoption did not have a material impact on the Company&#8217;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Recently Issued Accounting Standard Updates &#8211; Not Yet Adopted </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In August 2020, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06,</div> &#8220;<div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Debt - Debt with Conversion and Other Options (Subtopic <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">470-20)</div> and Derivatives and Hedging - Contracts in Entity</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8217;</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">s Own Equity (Subtopic <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">815-40).</div></div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8221;</div></div> ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06</div> simplifies the accounting for convertible debt instruments and convertible preferred stock by reducing the number of accounting models and the number of embedded conversion features that could be recognized separately from the primary contract. ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06</div> also enhances transparency and improves disclosures for convertible instruments and earnings per share guidance. ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06</div> is effective for annual reporting periods beginning after December&#160;15, 2021, including interim periods within those fiscal years. Early adoption is permitted, but no earlier than fiscal years beginning after December&#160;15, 2020. This update permits the use of either the modified retrospective or fully retrospective method of transition. The Company is currently evaluating the timing and impact of the adoption of ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06</div> on the Company&#8217;s consolidated financial statements.</div> </ix:continuation></ix:continuation> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">9 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"></div> </div> </div> </div> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:nonNumeric name="us-gaap:FairValueDisclosuresTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fair Value Measurements </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 3%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 7%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 88%;"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: top;">Level&#160;1&#160;&#8211;</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: top;">Valuations based on unadjusted quoted prices in active markets for identical assets or liabilities that the Company has the ability to access.</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"></td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: top;">Level&#160;2&#160;&#8211;</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: top;">Valuations based on quoted prices for similar assets or liabilities in active markets, quoted prices for identical or similar assets or liabilities in markets that are not active and models for which all significant inputs are observable, either directly or indirectly.</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"></td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: top;">Level&#160;3&#160;&#8211;</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: top;">Valuations based on inputs that are unobservable and significant to the overall fair value measurement.</td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">As of September&#160;30, 2020 and December&#160;31, 2019, cash and cash equivalents on the Company&#8217;s consolidated balance sheets included $<ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="PAsOn09_30_2020_FairValueInputsLevel1MemberusgaapFairValueByFairValueHierarchyLevelAxis_MoneyMarketFundsMemberusgaapCashAndCashEquivalentsAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">395.6</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="PAsOn12_31_2019_FairValueInputsLevel1MemberusgaapFairValueByFairValueHierarchyLevelAxis_MoneyMarketFundsMemberusgaapCashAndCashEquivalentsAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">415.6</ix:nonFraction>&#160;million, respectively, in a money market account. These funds are valued on a recurring basis using Level&#160;1 inputs. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In July 2019, the Company issued $<ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="PAsOn07_31_2019_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="INF" scale="6" format="ixt:numdotdecimal">287.5</ix:nonFraction>&#160;million aggregate principal amount of the Company&#8217;s <ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="PAsOn09_30_2020_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_pure" decimals="5" scale="-2" format="ixt:numdotdecimal">0.375</ix:nonFraction>% Convertible Senior Notes due <ix:nonNumeric name="us-gaap:DebtInstrumentMaturityDate" contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" format="ixt:datemonthdayyearen">July 15, 2024</ix:nonNumeric> (the &#8220;2019 Notes&#8221;). Interest is payable <ix:nonNumeric name="us-gaap:DebtInstrumentFrequencyOfPeriodicPayment" contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">semi-annually</ix:nonNumeric> in arrears on January&#160;15 and July&#160;15 of each year. The 2019 Notes will mature on July&#160;15, 2024<div style="display:inline;">,</div> unless earlier converted or repurchased in accordance with their terms. As of September&#160;30, 2020, the carrying value of the 2019 Notes was $<ix:nonFraction name="us-gaap:LongTermDebt" contextRef="PAsOn07_31_2019_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">240.9</ix:nonFraction>&#160;million, net of unamortized discount, and the fair value of the 2019 Notes was $<ix:nonFraction name="us-gaap:LongTermDebtFairValue" contextRef="PAsOn07_31_2019_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">416.0</ix:nonFraction>&#160;million. The fair value of the 2019 Notes is a Level&#160;1 valuation and was determined based on the most recent trade activity of the 2019 Notes as of September&#160;30, 2020. The 2019 Notes are discussed in more detail in Note 8, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Convertible Senior Notes&#8221; </div></div>to these consolidated financial statements.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company&#8217;s <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-financial</div> assets include goodwill and other intangible assets, which we classify as Level&#160;3 items. These assets are measured at fair value on a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-recurring</div> basis as part of our impairment testing. See Note 6, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Goodwill and Intangible Assets,&#8221; </div></div>below for additional information related to goodwill and intangible assets, and our impairment testing.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">During the three and nine months ended September&#160;30, 2020, there were no remeasurements to fair value of financial assets and liabilities that are not measured at fair value on a recurring basis. </div></div></ix:nonNumeric> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <ix:nonNumeric name="us-gaap:BusinessCombinationDisclosureTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15358055">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">3.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Acquisitions </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Engineered Molding Technology LLC </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On July&#160;13, 2020, the Company completed the acquisition of <ix:nonFraction name="us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_pure" decimals="2" scale="-2" format="ixt:numdotdecimal">100</ix:nonFraction>% of the membership interests of Engineered Molding Technology LLC (&#8220;EMT&#8221;), a New York limited liability&#160;company<div style="letter-spacing: 0px; top: 0px;;display:inline;">,</div> pursuant to a Membership Interest Purchase Agreement, dated June&#160;26, 2020, by and among the Company, EMT, and Michael Pandori and Todd Etesse, the legal and beneficial owners of EMT (such acquisition, the &#8220;EMT Acquisition&#8221;). </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">EMT, which is headquartered in Clifton Park, New York, is an innovator and manufacturer of <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> silicone assemblies and components used in the manufacturing of biologic drugs. EMT&#8217;s standard and custom molding as well as their over-molded connectors and silicone tubing products are key components in <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> filtration and chromatography systems. EMT&#8217;s products will complement and expand Repligen&#8217;s <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> product offerings.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Consideration Transferred </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The EMT <div style="letter-spacing: 0px; top: 0px;;display:inline;">Acquisition</div> was accounted for as a purchase of a business under ASC&#160;805, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Business Combinations&#8221;. </div></div>Total consideration paid was $<ix:nonFraction name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">28.5</ix:nonFraction>&#160;million<div style="display:inline;">,</div> which included $<ix:nonFraction name="rgen:BusinessCombinationConsiderationIndemnificationEscrow" contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">2.2</ix:nonFraction>&#160;million<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">deposited into an escrow account against which the Company may make claim<div style="letter-spacing: 0px; top: 0px;;display:inline;">s</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>for indemnification<div style="display:inline;">.</div> Under the acquisition method of accounting, the net assets of EMT were recorded as of the acquisition date, at their respective fair values, and consolidated with those of Repligen. The fair value of the net tangible assets acquired is estimated to be approximately $<ix:nonFraction name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets" contextRef="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">1.5</ix:nonFraction>&#160;million, the fair value of the intangible assets acquired is estimated to be $<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" contextRef="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">14.4</ix:nonFraction>&#160;million, and the residual goodwill is estimated to be approximately $<ix:nonFraction name="us-gaap:Goodwill" contextRef="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">12.6</ix:nonFraction>&#160;million. The estimated consideration and preliminary purchase price information has been prepared using a preliminary valuation. The preparation of the valuation required the use of significant assumptions and<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">estimates<div style="letter-spacing: 0px; top: 0px;;display:inline;">. Critical estimates included, but were not&#160;</div></div></div></ix:nonNumeric> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">10 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelection_15358055" continuedAt="TextSelectionAppend_15358055_1"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">limited to, future expected cash flows, including projected revenues and expenses, and the applicable discount rates. These estimates were based on assumptions that Repligen believes to be reasonable. However, actual results may differ from these estimates. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Acquisition<div style="display:inline;">-</div>related costs are not included as a component of consideration transferred but are expensed in the periods in which the costs are incurred. The Company incurred $<ix:nonFraction name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" contextRef="P07_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">1.0</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:BusinessCombinationAcquisitionRelatedCosts" contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">1.1</ix:nonFraction>&#160;million of acquisition related costs during the three and nine months ended September&#160;30, 2020. The transaction costs are included in selling, general and <div style="letter-spacing: 0px; top: 0px;;display:inline;">administrative</div> expenses in the consolidated statements of comprehensive income (loss). </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Fair Value of Net Assets Acquired </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The allocation of purchase price is based on the fair value of assets acquired and liabilities assumed as of the acquisition date, based on the preliminary valuation. As additional information becomes available, the Company may further revise its preliminary purchase price allocation during the remainder of the measurement period (which will not exceed 12 months from July&#160;13, 2020). Any such revisions or changes may be material. <ix:nonNumeric name="us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" escape="true" continuedAt="TextSelection_15358056">The components and allocation of the purchase price consists of the following amounts (amounts in thousands):</ix:nonNumeric> </div></div> <ix:continuation id="TextSelection_15358056"> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 88%; font-family: 'Times New Roman';"></td>
<td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="font-family: 'Times New Roman';"></td>
<td style="font-family: 'Times New Roman';"></td>
<td style="font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash&#160;and&#160;cash&#160;equivalents</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">69</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts receivable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,057</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Inventory</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">449</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Prepaid expenses and other current assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">7</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fixed assets, net</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">472</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease right of use assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,050</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" contextRef="PAsOn07_13_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">11,080</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Developed technology</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" contextRef="PAsOn07_13_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">2,910</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademark and tradename</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_TrademarksAndTradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">320</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-compete</div> agreements</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">50</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Goodwill</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:Goodwill" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">12,573</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts payable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">283</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued liabilities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">190</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">211</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability, long-term</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">839</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fair value of net assets acquired</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$</div></div></td>
<td style="vertical-align: bottom;;text-align:right;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">28,514</ix:nonFraction></div></div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">&#160;</div></div></td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:continuation> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Acquired Goodwill </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The goodwill of $<ix:nonFraction name="us-gaap:AcquiredFiniteLivedIntangibleAssetResidualValue" contextRef="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_GoodwillMemberusgaapFairValueByAssetClassAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">12.6</ix:nonFraction>&#160;million represents future economic benefits expected to arise from anticipated synergies from the integration of EMT. These synergies include certain cost savings, operating efficiencies and other strategic benefits projected to be achieved as a result of the EMT Acquisition. Substantially all of the goodwill recorded is expected to be deductible for income tax purposes. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Intangible Assets </div></div></div> <ix:nonNumeric name="us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table sets forth the components of the identified intangible assets associated with the EMT Acquisition and their estimated useful lives: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 68%;"></td>
<td style="width: 9%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 9%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Useful&#160;life</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fair&#160;Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="P01_01_2020To09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" format="ixt-sec:duryear">14</ix:nonNumeric>&#160;years</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" contextRef="PAsOn09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">11,080</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Developed technology</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="P01_01_2020To09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" format="ixt-sec:duryear">11</ix:nonNumeric> years</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" contextRef="PAsOn09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">2,910</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademark and tradename</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_TradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">14</ix:nonNumeric> years</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" contextRef="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_TradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">320</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-competition</div> agreements</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">3</ix:nonNumeric> years</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" contextRef="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">50</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" contextRef="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">14,360</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:nonNumeric></ix:continuation> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">11 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"></div> </div> </div> </div> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelectionAppend_15358055_1" continuedAt="TextSelectionAppend_15358055_2"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Revenue, Net Income and Pro Forma Presentation </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company has included the operating results of EMT in its consolidated statements of comprehensive income (loss) since the July&#160;13, 2020 acquisition date. The Company does not consider this acquisition to be material to its consolidated statements of comprehensive income (loss) and therefore has not included pro forma results. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">C Technologies, Inc. </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On May&#160;31, 2019, Repligen acquired C Technologies, pursuant to the terms of a Stock Purchase Agreement (the &#8220;Agreement&#8221;), by and among Repligen, C Technologies and Craig Harrison, an individual and sole stockholder of C Technologies (such acquisition, the &#8220;C Technologies Acquisition&#8221;). </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Acquisition-related costs are not included as a component of consideration transferred but are expensed in the periods in which the costs are incurred. The Company incurred $<ix:nonFraction name="us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed" contextRef="P01_01_2019To09_30_2019_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">4.0</ix:nonFraction>&#160;million in transaction costs for the nine months ended September&#160;30, 2019. The transaction costs are included in selling, general and administrative expenses in the consolidated statements of comprehensive income (loss). In connection with the transaction, an additional $<ix:nonFraction name="us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" contextRef="PAsOn06_30_2020_TrustForBenefitOfEmployeesMembersrtTitleOfIndividualAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">9.0</ix:nonFraction>&#160;million was paid to employees during the second quarter of 2020, based on their continued employment with the Company one year after the date of the close of the C Technologies Acquisition.<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">The</div>&#160;Company has recognized $<ix:nonFraction name="us-gaap:CompensationExpenseExcludingCostOfGoodAndServiceSold" contextRef="P01_01_2020To09_30_2020_TrustForBenefitOfEmployeesMembersrtTitleOfIndividualAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">3.7</ix:nonFraction>&#160;million of compensation expense associated<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">with</div> this amount due to employees <div style="letter-spacing: 0px; top: 0px;;display:inline;">during the nine months ended September 30, 2020&#160;</div>and has recognized $<ix:nonFraction name="us-gaap:CompensationExpenseExcludingCostOfGoodAndServiceSold" contextRef="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_TrustForBenefitOfEmployeesMembersrtTitleOfIndividualAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">9.0</ix:nonFraction>&#160;million of compensation expense associated with this amount due since the C Technologies Acquisition. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Fair Value of Net Assets Acquired </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The allocation of purchase price is based on the fair value of assets acquired and liabilities assumed as of the acquisition date, based on the preliminary valuation. The Company obtained this information during due diligence and through other sources. In the months after closing, the Company obtained additional information about these assets and liabilities as it learned more about C Technologies. The Company refined the estimates of fair value to more accurately allocate the purchase price. Only items identified as of the acquisition date were considered for subsequent adjustment. We made appropriate adjustments to the purchase price allocation during the measurement period, which was one year from the acquisition date. <ix:nonNumeric name="us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" contextRef="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" escape="true" continuedAt="TextSelection_15358058">The components and allocation of the purchase price consists of the following amounts (amounts in thousands):</ix:nonNumeric> </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <ix:continuation id="TextSelection_15358058">
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 87%; font-family: 'Times New Roman';"></td>
<td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="font-family: 'Times New Roman';"></td>
<td style="font-family: 'Times New Roman';"></td>
<td style="font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash&#160;and&#160;cash&#160;equivalents</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,795</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Restricted cash</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">26,933</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts receivable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,044</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Inventory</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,783</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Prepaid expenses and other current assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">93</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fixed assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">40</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease right of use asset</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,836</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">59,680</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Developed technology</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">28,920</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademark and tradename</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_TrademarksAndTradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,570</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-competition</div> agreements</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">660</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Goodwill</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:Goodwill" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">142,314</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred taxes</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">895</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts payable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">436</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued liabilities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">2,767</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued bonus</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">26,928</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,709</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">51</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability, long-term</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,785</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fair value of net assets acquired</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$</div></div></td>
<td style="vertical-align: bottom;;text-align:right;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">239,887</ix:nonFraction></div></div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">&#160;</div></div></td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:continuation> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Acquired Goodwill </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The goodwill of $<ix:nonFraction name="us-gaap:AcquiredFiniteLivedIntangibleAssetResidualValue" contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_GoodwillMemberusgaapFairValueByAssetClassAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">142.3</ix:nonFraction>&#160;million represents future economic benefits expected to arise from synergies from combining operations and commercial organizations to increase market presence and the extension of existing customer relationships. Substantially all of the goodwill recorded is expected to be deductible for income tax purposes. Pursuant to the Company&#8217;s business combination accounting policy included in Note 2, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Summary of Significant Accounting Policies &#8211; Business Combinations, Goodwill and Intangible Assets,</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8221;</div></div> of the Company&#8217;s Annual Report on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K</div> for the fiscal year ended December&#160;31, 2019, the Company</div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </ix:continuation> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">12 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelectionAppend_15358055_2"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;">recorded goodwill adjustments for the effects on goodwill of changes to net assets acquired during the period that such change is identified, provided that any such change is within the measurement period (up to one year from the date of the acquisition). In March 2020, the Company recorded an adjustment to goodwill of $<ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" contextRef="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.3</ix:nonFraction>&#160;million related to additional state income tax liabilities to be paid to the seller, which were incurred from the Company&#8217;s finalized 338(h)(10) tax election.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Revenue, Net Income and Pro Forma Presentation </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company recorded revenue from C Technologies of $<ix:nonFraction name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" contextRef="P07_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">9.0</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" contextRef="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">23.3</ix:nonFraction>&#160;million for the three and nine months ended September&#160;30, 2020, respectively, and $<ix:nonFraction name="us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" contextRef="P05_31_2019To12_31_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">16.4</ix:nonFraction>&#160;million from May&#160;31, 2019, the date of acquisition, to December&#160;31, 2019. The Company recorded a net income from C Technologies&#8217; results of operations of $<ix:nonFraction name="us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss" contextRef="P07_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">2.1</ix:nonFraction>&#160;million and a net loss of $<ix:nonFraction name="us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss" contextRef="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.8</ix:nonFraction>&#160;million for the three and nine months ended September&#160;30, 2020, respectively, and a net loss of $<ix:nonFraction name="us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss" contextRef="P05_31_2019To12_31_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">7.4</ix:nonFraction>&#160;million from May&#160;31, 2019 to December&#160;31, 2019. The Company has included the operating results of C Technologies in its consolidated statements of comprehensive income (loss) since the May&#160;31, 2019 acquisition date. The following pro forma financial information presents the combined results of operations of Repligen and C Technologies as if the acquisition had occurred on January&#160;1, 2019 after giving effect to certain pro forma adjustments. The pro forma adjustments reflected herein include only those adjustments that are directly attributable to the C Technologies Acquisition, factually supportable and have a recurring impact. These pro forma adjustments include amortization expense on the acquired identifiable intangible assets, adjustments to stock-based compensation expense for equity compensation issued to C Technologies employees and the income tax effect of the adjustments made. In addition, acquisition-related transaction costs and an accounting adjustment to record inventory at fair value were excluded from pro forma net income in 2019. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Prior to the C Technologies Acquisition, C Technologies did not generate monthly or quarterly financial statements that were prepared in accordance with GAAP. </div></div> <ix:nonNumeric name="us-gaap:BusinessAcquisitionProFormaInformationTextBlock" contextRef="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following pro forma financial information does not reflect any adjustments for anticipated expense savings resulting from the acquisition and is not necessarily indicative of the operating results that would have actually occurred had the transaction been consummated on January&#160;1, 2019 or of future results (amounts in thousands, except per share data): </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 79%;"></td>
<td style="width: 13%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Pro forma total revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessAcquisitionsProFormaRevenue" contextRef="P01_01_2019To09_30_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">209,960</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Pro forma net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss" contextRef="P01_01_2019To09_30_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">21,012</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Pro forma earnings per share:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Basic</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic" contextRef="P01_01_2019To09_30_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.45</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Diluted</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted" contextRef="P01_01_2019To09_30_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.44</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:nonNumeric></ix:continuation><ix:nonNumeric name="us-gaap:RevenueFromContractWithCustomerTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15358077"><div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">4.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue Recognition </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company generates revenue from the sale of bioprocessing products, equipment devices, and related consumables used with these equipment devices to customers in the life science and biopharmaceutical industries. Under ASC 606, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Revenue from Contracts with Customers,&#8221; </div></div>revenue is recognized when, or as, obligations under the terms of a contract are satisfied, which occurs when control of the promised products or services is transferred to customers.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Disaggregation of Revenue </div></div></div></div> <ix:nonNumeric name="us-gaap:DisaggregationOfRevenueTableTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenues for the three and nine months ended September&#160;30, 2020 and 2019 were as follows: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 66%;"></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three Months Ended<br/> September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended<br/> September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Product revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P07_01_2020To09_30_2020_ProductMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">94,029</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P07_01_2019To09_30_2019_ProductMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">69,419</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2020To09_30_2020_ProductMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">257,521</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2019To09_30_2019_ProductMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">200,701</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Royalty and other income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P07_01_2020To09_30_2020_RoyaltyMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">31</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P07_01_2019To09_30_2019_RoyaltyMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">26</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2020To09_30_2020_RoyaltyMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">91</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2019To09_30_2019_RoyaltyMembersrtProductOrServiceAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">70</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">94,060</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">69,445</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">257,612</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">200,771</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:nonNumeric> <div style="text-align: left;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">When disaggregating revenue, the Company considered all of the economic factors that may affect its revenues. Because all of its revenues are from bioprocessing customers, there are no differences in the nature, timing and uncertainty of the Company&#8217;s </div></div></div></div> </div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></ix:nonNumeric> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">13 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"></div> </div> </div> </div> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelection_15358077" continuedAt="TextSelectionAppend_15358077_1"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">revenues and cash flows from any of its product lines. However, given that the Company&#8217;s revenues are generated in different geographic regions, factors such as regulatory 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 revenues are generated from two customers; therefore, economic factors specific to these two customers could impact the nature, timing and uncertainty of the Company&#8217;s revenues and cash flows. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">Disaggregated revenue from contracts with customers by geographic region can be found in Note 15, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Segment Reporting,&#8221;</div></div> below.</div> <ix:nonNumeric name="rgen:ScheduleOfRevenueByMajorCustomersTableTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue from significant customers that represent 10% or more of the Company&#8217;s total revenue is as follows: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 69%;"></td>
<td style="width: 4%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 4%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 4%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 4%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cytiva (formerly GE Healthcare)</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2019To09_30_2019_CytivaMembersrtMajorCustomersAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">23,759</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">MilliporeSigma</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P07_01_2019To09_30_2019_MilliporeSigmaMembersrtMajorCustomersAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">9,458</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2020To09_30_2020_MilliporeSigmaMembersrtMajorCustomersAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">29,387</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="P01_01_2019To09_30_2019_MilliporeSigmaMembersrtMajorCustomersAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">28,354</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:nonNumeric> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Chromatography Products </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company&#8217;s chromatography products include a number of products used in the downstream purification and quality control of biological drugs. The majority of chromatography revenue relates to the OPUS<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">pre-packed</div> chromatography column line. OPUS columns are designed to be disposable following a production campaign. Each OPUS column is delivered <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">pre-packaged</div> with the customer&#8217;s choice of chromatography resin, which is either provided by the Company for the customer or customer supplied. In either scenario, the OPUS column and resin are not interdependent of one another and are therefore considered distinct products that represent separate performance obligations. Chromatography product revenue is generally recognized at a point in time upon transfer of control to the customer.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Filtration Products </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company&#8217;s filtration products generate revenue through the sale of KrosFlo<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> hollow fiber TFF systems,&#160;TangenX<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> flat sheet cassettes, Spectrum<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> hollow fiber filters, membranes and modules, XCell ATF<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> systems and related consumables<div style="letter-spacing: 0px; top: 0px;;display:inline;">.</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;Supporting our systems, we also sell&#160;</div>&#160;ProConnex<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> flow path assemblies<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">and custom silicone-based, single-use flow path assemblies and components from EMT</div>.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company&#8217;s KrosFlo systems are used in the filtration, isolation, purification and concentration of biologics and diagnostic products. TFF is a rapid and efficient method for separation and purification of biomolecules that is widely used in laboratory, process development and process scale applications in biopharmaceutical manufacturing. Sales of large-scale systems generally include components and consumables as well as training and installation services at the request of the customer. Because the initial sale of components and consumables are necessary for the operation of the system, such items are combined with the systems as a single performance obligation. Training and installation services do not significantly modify or customize these systems and therefore represent a distinct performance obligation. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company&#8217;s TangenX flat sheet cassettes (SIUS<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div>, SIUS Gamma<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> and PRO) are not highly interdependent on one another and are therefore considered distinct products that represent separate performance obligations. Product revenue from the sale of TangenX flat sheet cassettes are generally recognized at a point in time upon transfer of control of the customer. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company&#8217;s other filtration product offerings are not highly interdependent of one another and are therefore considered distinct products that represent separate performance obligations. Revenue on these products is generally recognized at a point in time upon transfer of control to the customer. The Company invoices the customer for the installation and training services in an amount that directly corresponds with the value to the customer of the Company&#8217;s performance to date; therefore, revenue recognized is based on the amount billable to the customer in accordance with the practical expedient under ASC <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">606-10-55-18.</div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company also markets the XCell ATF system, a technologically advanced filtration device used in upstream processes to continuously remove cellular metabolic waste products during the course of a fermentation run, freeing healthy cells to continue producing the biologic drug of interest. XCell ATF systems typically include a filtration system and consumables (i.e., tubing sets, metal stands) as well as training and installation services at the request of the customer. The filtration system and consumables are considered distinct products and therefore represent separate performance obligations. First time purchasers of the systems typically purchase a controller that is shipped with the tubing set(s) and metal stand(s). The controller is not considered distinct as it is a proprietary product that is highly interdependent with the filtration system; therefore, the controller is combined with the filtration system and accounted for as a single performance obligation. The training and installation services do not significantly modify or customize the XCell ATF system and therefore represent a distinct performance obligation. XCell<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">ATF system product revenue related to the filtration system (including the controller if applicable) and consumables is generally</div> </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </ix:continuation> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">14 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelectionAppend_15358077_1" continuedAt="TextSelectionAppend_15358077_2"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;">recognized at a point in time upon transfer of control to the customer. XCell ATF system service revenue related to training and installation services is generally recognized over time, as the customer simultaneously receives and consumes the benefits as the Company performs. The Company invoices the customer for the installation and training services in an amount that directly corresponds with the value to the customer of the Company&#8217;s performance to date; therefore, revenue recognized is based on the amount billable to the customer in accordance with the practical expedient under ASC <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">606-10-55-18.</div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">On July&#160;13, 2020, the Company consummated the EMT Acquisition and added EMT&#8217;s silicone-based, <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> components and manifolds to its filtration franchise. These products are key components in <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> filtration and chromatography systems and will help expand its line of <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> ProConnex flow paths, streamline its supply chain for ATF and provide more flexibility as the Company scales and expands its <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> and systems portfolios.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Process Analytics Products </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Process Analytics franchise generates revenue primarily through the sale of the SoloVPE and FlowVPE Slope Spectroscopy systems, consumables and service. These products complement and support the Company&#8217;s existing Filtration, Chromatography and Proteins franchises as they allow end users to make <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">in-line</div> protein concentration measurements in filtration, chromatography and fill-finish applications, designed to allow for real-time process monitoring.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Protein Products </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company&#8217;s Protein franchise generates revenue through the sale of Protein A affinity ligands and growth factors. Protein A ligands are an essential component of Protein A chromatography resins (media) used in the purification of virtually all <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">mAb-based</div> drugs on the market or in development. The Company manufactures multiple forms of Protein A ligands under long-term supply agreements with major life sciences companies, who in turn sell their Protein A chromatography media to end users (biopharmaceutical manufacturers). The Company also manufactures growth factors for sale under long-term supply agreements with certain life sciences companies as well as<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">for<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>direct sales to its customers. Each protein product is considered distinct and therefore represents a separate performance obligation. Protein product revenue is generally recognized at a point in time upon transfer of control to the customer.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Other Products </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company&#8217;s other products include operating room products sold to hospitals. Other product revenue is generally recognized at a point in time upon transfer of control to the customer. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Transaction Price Allocated to Future Performance Obligations </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">Remaining performance obligations represents the transaction price of contracts for which work has not been performed or has been partially performed. The Company&#8217;s future performance obligations relate primarily to the installation and training of certain of its systems sold to customers. These performance obligations are completed within one year of receipt of a purchase order from its customers. Accordingly, the Company has elected to not disclose the value of these unsatisfied performance obligations as provided under ASC <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">606-10-50-14.</div></div></div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Contract Balances from Contracts with Customers </div></div></div></div> <ix:nonNumeric name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table provides information about receivables and deferred revenues from contracts with customers as of September&#160;30, 2020 (amounts in thousands): </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 88%; font-family: &quot;Times New Roman&quot;;"></td>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balances from contracts with customers only:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts receivable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">55,830</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred revenue (included in accrued liabilities in the consolidated balance sheets)</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"><div style="letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredRevenue" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">10,141</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue recognized during the nine-month period ended September&#160;30, 2020 relating to:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The beginning deferred revenue balance</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ContractWithCustomerLiability" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,133</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Changes in pricing related to products or services satisfied in previous periods</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"><div style="letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"><ix:nonFraction name="us-gaap:ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction>&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:nonNumeric> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The timing of revenue recognition, billings and cash collections results in the accounts receivables and deferred revenue balances on the Company&#8217;s consolidated balance sheets.&#160;</div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </ix:continuation> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">15 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"></div> </div> </div> </div> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelectionAppend_15358077_2"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">A contract asset is created when the Company satisfies a performance obligation by transferring a promised good to the customer. Contract assets may represent conditional or unconditional rights to consideration. The right is conditional, and recorded as a contract asset, if the Company must first satisfy another performance obligation in the contract before it is entitled to payment from the customer. Contract assets are transferred to billed receivables once the right becomes unconditional. If the Company has the unconditional right to receive consideration from the customer, the contract asset is accounted for as a billed receivable and presented separately from other contract assets. A right is unconditional if nothing other than the passage of time is required before payment of that consideration is due. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">When consideration is received, or such consideration is unconditionally due, from a customer prior to transferring goods or services to the customer under the terms of a contract, a contract liability is recorded. Contract liabilities are recognized as revenue after control of the products or services is transferred to the customer and all revenue recognition criteria have been met. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Costs to Obtain or Fulfill a Customer Contract </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company&#8217;s sales commission structure is based on achieving revenue targets. The commissions are driven by revenue derived from customer purchase orders which are short term in nature. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">Applying the practical expedient in paragraph <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">340-40-25-4,</div></div></div> the Company recognizes the incremental costs of obtaining contracts as an expense when incurred if the amortization period of the assets that the Company otherwise would have recognized is one year or less. These costs are included in selling, general, and administrative expenses. When shipping and handling costs are incurred after a customer obtains control of the products, the Company accounts for these as costs to fulfill the promise and not as a separate performance obligation.</div> </ix:continuation> <div style="font-size: 6pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 6pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <ix:nonNumeric name="us-gaap:CreditLossFinancialInstrumentTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15358083">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">5.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Credit Losses </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">Effective January&#160;1, 2020, the Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13,</div> <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Financial Instruments &#8211; Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments,&#8221;</div></div> prospectively. ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13</div> replaces the incurred loss impairment model with an expected credit loss impairment model for financial instruments, including trade receivables. The guidance requires entities to consider forward-looking information to estimate expected credit losses, resulting in earlier recognition of losses for receivables that are current or not yet due. Upon adoption, changes in the allowance were not material for the transition period starting January&#160;1, 2020 through the nine months ended September&#160;30, 2020.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company is exposed to credit losses primarily through sales of products and services. The Company&#8217;s expected loss allowance methodology for accounts receivable is developed using historical collection experience, current and future economic and market conditions and a review of the current status of customers&#8217; trade accounts receivables. Customers are pooled based on sharing specific risk factors, including geographic location. Due to the short-term nature of such receivables, the estimated accounts receivable that may not be collected is based on aging of the accounts receivable balances. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customers are assessed for credit worthiness upfront through a credit review, which includes assessment based on the Company&#8217;s analysis of their financial statements when a credit rating is not available. The Company evaluates contract terms and conditions, country and political risk, and may require prepayment to mitigate risk of loss. Specific allowance amounts are established to record the appropriate provision for customers that have a higher probability of default. The Company monitors changes to the receivables balance on a timely basis, and balances are written off as they are determined to be uncollectable after all collection efforts have been exhausted. Estimates of potential credit losses are used to determine the allowance. It is based on assessment of anticipated payment and all other historical, current and future information that is reasonably available. </div></div></ix:nonNumeric><ix:continuation id="TextSelection_15358083" continuedAt="TextSelectionAppend_15358083_1"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The accounts receivable balance on the Company&#8217;s consolidated balance sheet as of September&#160;30, 2020 was $<ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">55.8</ix:nonFraction>&#160;million, net of $<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.6</ix:nonFraction>&#160;million of allowances. <ix:nonNumeric name="us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15358084">The following table provides a roll-forward of the allowance for credit losses in 2020 that is deducted from the amortized cost basis of accounts receivable to present the net amount expected to be collected (amounts in thousands):</ix:nonNumeric></div></div> </ix:continuation></div> </div> <div style="text-align: center;"> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">16 </div></div></div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em; text-align: left;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelection_15358084"><ix:continuation id="TextSelectionAppend_15358083_1">
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 91%; font-family: &quot;Times New Roman&quot;;"></td>
<td style="width: 4%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at January&#160;1, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivable" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">525</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Current period change</div>&#160;for expected credit losses</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="P01_01_2020To03_31_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">133</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at March&#160;31, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivable" contextRef="PAsOn03_31_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">658</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Current period change for write-offs</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs" contextRef="P04_01_2020To06_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">37</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Current period change for expected credit losses</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="P04_01_2020To06_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">83</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;</td> </tr>
<tr style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(255, 255, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at June&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);;text-align:right;">(<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivable" contextRef="PAsOn06_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">538</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(255, 255, 255);">)&#160;</td> </tr>
<tr style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Current period change for expected credit losses</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">(<ix:nonFraction name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">83</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(255, 255, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);">$</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);;text-align:right;">(<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivable" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">621</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(255, 255, 255);">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;</td> </tr> </table> </ix:continuation></ix:continuation> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <ix:nonNumeric name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15358096">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">6.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Goodwill and Intangible Assets </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Goodwill </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">Goodwill represents the difference between the purchase price and the estimated fair value of identifiable assets acquired and liabilities assumed. Goodwill acquired in a business combination and determined to have an indefinite useful life is not amortized, but instead is tested for impairment at least annually in accordance with ASC 350, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Intangibles &#8211; Goodwill and Other&#8221;</div></div>. <ix:nonNumeric name="us-gaap:ScheduleOfGoodwillTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15358099">The following table represents the change in the carrying value of goodwill for the nine months ended September&#160;30, 2020 (amounts in thousands):</ix:nonNumeric></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <ix:continuation id="TextSelection_15358099">
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 87%; font-family: 'Times New Roman';"></td>
<td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="font-family: 'Times New Roman';"></td>
<td style="font-family: 'Times New Roman';"></td>
<td style="font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance&#160;as&#160;of&#160;December&#160;31,&#160;2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:Goodwill" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">468,413</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Acquisition of Engineered Molding Technology</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">12,573</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Goodwill adjustment related to C Technologies, Inc.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">293</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cumulative translation adjustment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">764</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance as of September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:Goodwill" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">482,043</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:continuation> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">During each of the fourth quarters of 2019, 2018 and 2017, the Company completed its annual impairment assessments and concluded that goodwill was not impaired in any of those years. The Company has not identified any &#8220;triggering&#8221; events which indicate an impairment of goodwill in the three and nine months ended September&#160;30, 2020. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Intangible Assets </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible assets with a definitive life are amortized over their useful lives using the straight-line method, and the amortization expense is recorded within cost of product revenue and selling, general and administrative expenses in the Company&#8217;s statements of comprehensive income (loss). Intangible assets and their related useful lives are reviewed at least annually to determine if any adverse conditions exist that would indicate the carrying value of these assets may not be recoverable. More frequent impairment assessments are conducted if certain conditions exist, including a change in the competitive landscape, any internal decisions to pursue new or different technology strategies, a loss of a significant customer, or a significant change in the marketplace, including changes in the prices paid for our products or changes in the size of the market for the Company&#8217;s products. An impairment results if the carrying value of the asset exceeds the estimated fair value of the asset. If the estimate of an intangible asset&#8217;s remaining useful life is changed, the remaining carrying amount of the intangible asset is amortized prospectively over the revised remaining useful life. The Company continues to believe that its intangible assets are recoverable at September&#160;30, 2020. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Indefinite-lived assets are reviewed for impairment at least annually. There has been no impairment of the Company&#8217;s intangible assets for the periods presented. </div></div></ix:nonNumeric> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">17 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"></div> </div> </div> </div> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelection_15358096"><ix:nonNumeric name="rgen:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible assets, net consisted of the following at September&#160;30, 2020: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 60%;"></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 4%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,&#160;2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Gross<br/> Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amortization</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/> Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted<br/> Average<br/> Useful&#160;Life</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;years)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="10" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Finite-lived&#160;intangible&#160;assets:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Technology - developed</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">85,196</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">13,054</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">72,142</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" contextRef="P01_01_2020To09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">18</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Patents</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn09_30_2020_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">240</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn09_30_2020_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">240</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" contextRef="P01_01_2020To09_30_2020_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">8</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">172,325</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">33,861</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">138,464</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" contextRef="P01_01_2020To09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">15</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn09_30_2020_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">4,072</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn09_30_2020_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">480</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn09_30_2020_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,592</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" contextRef="P01_01_2020To09_30_2020_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">19</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other intangibles</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn09_30_2020_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,750</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn09_30_2020_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,263</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn09_30_2020_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">487</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" contextRef="P01_01_2020To09_30_2020_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">3</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total finite-lived intangible assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">263,583</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">48,898</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">214,685</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" contextRef="P01_01_2020To09_30_2020" format="ixt-sec:duryear">16</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Indefinite-lived intangible asset:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" contextRef="PAsOn09_30_2020_TrademarksMemberusgaapIndefiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">700</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="rgen:IndefiniteLivedIntangibleAssetsNet" contextRef="PAsOn09_30_2020_TrademarksMemberusgaapIndefiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">700</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total intangible assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IntangibleAssetsGrossExcludingGoodwill" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">264,283</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:IndefiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">48,898</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">215,385</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible assets consisted of the following at December&#160;31, 2019: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 60%;"></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 4%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,&#160;2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Gross<br/> Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amortization</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/> Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted<br/> Average<br/> Useful&#160;Life</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;years)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="10" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Finite-lived&#160;intangible&#160;assets:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Technology - developed</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn12_31_2019_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">82,169</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn12_31_2019_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">9,669</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn12_31_2019_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">72,500</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" contextRef="P01_01_2019To12_31_2019_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">19</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Patents</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn12_31_2019_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">240</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn12_31_2019_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">240</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" contextRef="P01_01_2019To12_31_2019_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">8</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn12_31_2019_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">160,825</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn12_31_2019_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">25,642</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn12_31_2019_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">135,183</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" contextRef="P01_01_2019To12_31_2019_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">15</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn12_31_2019_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,752</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn12_31_2019_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">333</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn12_31_2019_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,419</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" contextRef="P01_01_2019To12_31_2019_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">20</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other intangibles</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn12_31_2019_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,697</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn12_31_2019_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">947</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn12_31_2019_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">750</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" contextRef="P01_01_2019To12_31_2019_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis" format="ixt-sec:duryear">3</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total finite-lived intangible assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">248,683</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">36,831</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">211,852</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" contextRef="P01_01_2019To12_31_2019" format="ixt-sec:duryear">16</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Indefinite-lived intangible asset:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill" contextRef="PAsOn12_31_2019_TrademarksMemberusgaapIndefiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">700</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="rgen:IndefiniteLivedIntangibleAssetsNet" contextRef="PAsOn12_31_2019_TrademarksMemberusgaapIndefiniteLivedIntangibleAssetsByMajorClassAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">700</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total intangible assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IntangibleAssetsGrossExcludingGoodwill" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">249,383</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="rgen:IndefiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">36,831</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">212,552</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr> </table> </ix:nonNumeric> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Amortization expense for finite-lived intangible assets was $<ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">4.0</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">3.9</ix:nonFraction>&#160;million for the three months ended September&#160;30, 2020 and 2019, respectively. Amortization expense was $<ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">11.8</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">9.6</ix:nonFraction>&#160;million for the nine months ended September&#160;30, 2020 and 2019, respectively. <ix:nonNumeric name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15536023">As of September&#160;30, 2020, the Company expects to record the following amortization expense in future periods (amounts in thousands):</ix:nonNumeric> </div></div> <ix:continuation id="TextSelection_15536023"> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 85%;"></td>
<td style="width: 7%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.5pt;"> <div style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">For the Nine Months Ended September&#160;30,</div></div></div> </td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Estimated<br/> Amortization<br/> Expense</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2020 (remaining three months)</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,964</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2021</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">15,855</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2022</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">15,853</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2023</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">15,749</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2024</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">15,298</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2025 and thereafter</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">147,966</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">214,685</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:continuation></ix:continuation> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">18 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:nonNumeric name="us-gaap:SupplementalBalanceSheetDisclosuresTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">7.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Consolidated Balance Sheet Detail </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Inventories, net </div></div></div></div> <ix:nonNumeric name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Inventories, net consists of the following: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 72%;"></td>
<td style="width: 8%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 8%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">As&#160;of</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,<br/> 2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,<br/> 2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Raw materials</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:InventoryRawMaterialsNetOfReserves" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">42,201</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:InventoryRawMaterialsNetOfReserves" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">29,328</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Work-in-process</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:InventoryWorkInProcessNetOfReserves" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">6,192</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:InventoryWorkInProcessNetOfReserves" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">8,360</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Finished products</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:InventoryFinishedGoodsNetOfReserves" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">30,138</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:InventoryFinishedGoodsNetOfReserves" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">17,144</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total inventories, net</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">78,531</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">54,832</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:nonNumeric> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Property, Plant and Equipment </div></div></div></div> <ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Property, plant and equipment consist of the following: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 73%;"></td>
<td style="width: 7%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 6%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">As&#160;of</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,<br/> 2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,<br/> 2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Land</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:Land" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,023</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:Land" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,023</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Buildings</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BuildingsAndImprovementsGross" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">989</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:BuildingsAndImprovementsGross" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">764</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Leasehold improvements</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:LeaseholdImprovementsGross" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">29,776</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:LeaseholdImprovementsGross" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">23,905</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Equipment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:MachineryAndEquipmentGross" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">39,094</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:MachineryAndEquipmentGross" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">36,257</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Furniture, fixtures and office equipment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FurnitureAndFixturesGross" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">8,055</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:FurnitureAndFixturesGross" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">6,312</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Computer hardware and software</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CapitalizedComputerSoftwareGross" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">14,468</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:CapitalizedComputerSoftwareGross" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">8,810</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Construction in progress</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConstructionInProgressGross" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">6,416</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConstructionInProgressGross" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">6,707</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentOther" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">348</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentOther" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">56</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total property, plant and equipment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">100,169</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">83,834</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Less - Accumulated depreciation</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">44,814</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">35,379</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total property, plant and equipment, net</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">55,355</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">48,455</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:nonNumeric> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Depreciation expense totaled $<ix:nonFraction name="us-gaap:Depreciation" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">2.8</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:Depreciation" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">1.8</ix:nonFraction>&#160;million for the three months ended September&#160;30, 2020 and 2019, respectively. Depreciation expenses totaled $<ix:nonFraction name="us-gaap:Depreciation" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">7.8</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:Depreciation" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">5.2</ix:nonFraction>&#160;million for the nine months ended September&#160;30, 2020 and 2019, respectively. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Accrued Liabilities </div></div></div></div> <ix:nonNumeric name="us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued liabilities consist of the following: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 72%;"></td>
<td style="width: 8%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 8%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">As&#160;of</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,<br/> 2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,<br/> 2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Employee compensation</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EmployeeRelatedLiabilitiesCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">14,652</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EmployeeRelatedLiabilitiesCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">19,850</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Taxes</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccruedIncomeTaxesCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">2,759</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccruedIncomeTaxesCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,874</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Royalty and license fees</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccruedRoyaltiesCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,000</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccruedRoyaltiesCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">123</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Warranties</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">737</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,500</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Professional fees</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccruedProfessionalFeesCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,745</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccruedProfessionalFeesCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,081</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredRevenueCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">10,141</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:DeferredRevenueCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">5,005</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OtherAccruedLiabilitiesCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,007</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OtherAccruedLiabilitiesCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,898</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total accrued liabilities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">32,041</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">33,331</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:nonNumeric></ix:nonNumeric> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <ix:nonNumeric name="us-gaap:LongTermDebtTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15358105">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">8.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Convertible Senior Notes </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">0.375% Convertible Senior Notes due 2024 </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On July&#160;19, 2019, the Company issued $<ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="PAsOn07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="INF" scale="6" format="ixt:numdotdecimal">287.5</ix:nonFraction>&#160;million aggregate principal amount of <ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="PAsOn07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">0.375</ix:nonFraction>% Convertible Senior Notes due 2024 (&#8220;2019 Notes&#8221;), which includes the underwriters&#8217; exercise in full of an option to purchase an additional $<ix:nonFraction name="rgen:OptionToPurchaseAdditionalDebtFaceAmount" contextRef="PAsOn07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">37.5</ix:nonFraction>&#160;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 $<ix:nonFraction name="us-gaap:ProceedsFromConvertibleDebt" contextRef="P07_19_2019To07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">278.5</ix:nonFraction>&#160;million. </div></div></ix:nonNumeric> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">19 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"></div> </div> </div> </div> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelection_15358105" continuedAt="TextSelectionAppend_15358105_1"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The 2019 Notes are senior, unsecured obligations of the Company, and bear interest at a rate of <ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="PAsOn07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">0.375</ix:nonFraction>% per year. <ix:nonNumeric name="us-gaap:DebtInstrumentInterestRateTerms" contextRef="P07_19_2019To07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">Interest is payable semi-annually in arrears on January 15 and July 15 of each year, beginning on January 15, 2020.</ix:nonNumeric> The 2019 Notes will mature on <ix:nonNumeric name="us-gaap:DebtInstrumentMaturityDate" contextRef="P07_19_2019To07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" format="ixt:datemonthdayyearen">July 15, 2024</ix:nonNumeric>, unless earlier repurchased or converted in accordance with their terms. The initial conversion rate for the 2019 Notes is <ix:nonFraction name="us-gaap:DebtInstrumentConvertibleConversionRatio1" contextRef="P07_19_2019To07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_pure" decimals="INF" scale="0" format="ixt:numdotdecimal">8.6749</ix:nonFraction> shares of the Company&#8217;s common stock per $1,000 principal amount of 2019 Notes (which is equivalent to an initial conversion price of approximately $<ix:nonFraction name="us-gaap:DebtInstrumentConvertibleConversionPrice1" contextRef="PAsOn07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD_per_Share" decimals="INF" scale="0" format="ixt:numdotdecimal">115.28</ix:nonFraction> per share). Prior to the close of business on the business day immediately preceding April&#160;15, 2024, the 2019 Notes will be convertible at the option of the holders of 2019 Notes only upon the satisfaction of specified conditions and during certain periods. Thereafter until the close of business on the second scheduled trading day immediately preceding the maturity date, the 2019 Notes will be convertible at the options of the holders of 2019 Notes at any time regardless of these conditions. Conversion of the 2019 Notes will be settled in cash, shares of the Company&#8217;s common stock or a combination thereof, at the Company&#8217;s election. The 2019 Notes are not redeemable by the Company prior to maturity. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Holders of 2019 Notes may require the Company to repurchase their 2019 Notes upon the occurrence of a fundamental change prior to maturity at a repurchase price equal to <ix:nonFraction name="us-gaap:DebtInstrumentRedemptionPricePercentage" contextRef="P07_19_2019To07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">100</ix:nonFraction>% of the principal amount thereof, plus accrued and unpaid interest to, but excluding, the date of repurchase. In connection with certain corporate events, the Company will, under certain circumstances, increase the conversion rate for holders of 2019 Notes who elect to convert their 2019 Notes in connection with such corporate events. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">As of September&#160;30, 2020, the conditions allowing holders of the 2019 Notes to convert have not been met and therefore the 2019 Notes are not yet convertible and are recorded as a long-term liability in the Company&#8217;s consolidated balance sheet at September&#160;30, 2020. No 2019 Notes were converted by the holders of such notes in the third quarter of 2020. In the event the closing price conditions are met in the fourth quarter of 2020 or a future fiscal quarter, the 2019 Notes will be convertible at a holder&#8217;s option during the immediately following fiscal quarter. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company accounts for the 2019 Notes as separate liability and equity components. We determined the carrying amount of the liability component as the present value of its cash flows using a discount rate of <ix:nonFraction name="rgen:DiscountRate" contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">4.5</ix:nonFraction>% based on comparative convertible transactions for similar companies. The proceeds allocated to the debt conversion feature were $<ix:nonFraction name="us-gaap:DebtInstrumentConvertibleBeneficialConversionFeature" contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">52.1</ix:nonFraction>&#160;million. This amount was calculated by deducting the carrying value of the liability component from the principal amount of the 2019 Notes as a whole. The difference represents a debt discount that is amortized to interest expense on the Company&#8217;s consolidated statement of comprehensive income (loss) over the term of the 2019 Notes using the effective interest rate method. The Company will assess the equity classification of the cash conversion feature quarterly, and it is not <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">re-measured</div> as long as it continues to meet the conditions for equity classification.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company allocates transaction costs related to the issuance of the 2019 Notes to the liability and equity components using the same proportions as the initial carrying value of the 2019 Notes. Transaction costs related to the liability component were $<ix:nonFraction name="rgen:ConvertibleNotesTransactionCostsOfLiabilityComponent" contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">7.4</ix:nonFraction>&#160;million and are being amortized to interest expense using the effective interest method over the term of the 2019 Notes. Transaction costs attributable to the equity component were $<ix:nonFraction name="rgen:ConvertibleNotesTransactionCostsOfEquityComponent" contextRef="PAsOn09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">1.6</ix:nonFraction>&#160;million and are netted with the equity component of the 2019 Notes in stockholders&#8217; equity of the Company&#8217;s consolidated balance sheet at September&#160;30, 2020. </div></div> <ix:nonNumeric name="us-gaap:ConvertibleDebtTableTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The net carrying value of the liability component of the 2019 Notes is as follows: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto;border: 0px currentcolor;width: 76%;font-family: 'Times New Roman';font-size: 10pt;border-collapse: collapse;border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 73%;"></td>
<td style="width: 6%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">As&#160;of</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,<br/> 2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,<br/> 2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">0.375%&#160;convertible&#160;senior&#160;notes&#160;due&#160;2024:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Principal amount</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:DebtInstrumentCarryingAmount" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">287,500</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:DebtInstrumentCarryingAmount" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">287,500</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Less: unamortized debt discount</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:DebtInstrumentUnamortizedDiscount" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">40,764</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:DebtInstrumentUnamortizedDiscount" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">47,921</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Less: unamortized debt issuance costs</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredFinanceCostsNet" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">5,794</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:DeferredFinanceCostsNet" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">6,812</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total debt</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConvertibleNotesPayable" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">240,942</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConvertibleNotesPayable" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">232,767</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Less: current portion</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net carrying amount</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConvertibleLongTermNotesPayable" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">240,942</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConvertibleLongTermNotesPayable" contextRef="PAsOn12_31_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">232,767</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:nonNumeric> <div style="font-family: Times New Roman;font-size: 10pt;margin-top: 12pt;margin-bottom: 0pt;margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Interest expense recognized on the 2019 Notes for the three months ended September&#160;30, 2020 was $<ix:nonFraction name="us-gaap:InterestExpenseDebtExcludingAmortization" contextRef="P07_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.3</ix:nonFraction>&#160;million, $<ix:nonFraction name="us-gaap:AmortizationOfDebtDiscountPremium" contextRef="P07_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">2.4</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:AmortizationOfFinancingCosts" contextRef="P07_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.3</ix:nonFraction>&#160;million for the contractual coupon interest, the accretion of the debt discount and the amortization of the debt issuance costs, respectively. Interest expense recognized on the 2019 Notes for the nine months ended September&#160;30, 2020 was $<ix:nonFraction name="us-gaap:InterestExpenseDebtExcludingAmortization" contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.8</ix:nonFraction>&#160;million, $<ix:nonFraction name="us-gaap:AmortizationOfDebtDiscountPremium" contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">7.2</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:AmortizationOfFinancingCosts" contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">1.0</ix:nonFraction>&#160;million for the contractual coupon interest, the accretion of the debt discount and the amortization of the debt issuance costs, respectively. The effective interest rate on the 2019 Notes is <ix:nonFraction name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" contextRef="PAsOn09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">5.1</ix:nonFraction>%, which included the interest on the </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </ix:continuation> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">20 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelectionAppend_15358105_1"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2019 Notes, amortization of the debt discount and debt issuance costs. As of September&#160;30, 2020, the carrying value of the 2019 Notes was $<ix:nonFraction name="us-gaap:LongTermDebt" contextRef="PAsOn09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">240.9</ix:nonFraction>&#160;million and the fair value of the principal was $<ix:nonFraction name="us-gaap:LongTermDebtFairValue" contextRef="PAsOn09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">416.0</ix:nonFraction>&#160;million.&#160;The fair value of the 2019 Notes was determined based on the most recent trade activity of the 2019 Notes as of September&#160;30, 2020. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Conversion of the 2.125% Convertible Senior Notes due 2021 </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company utilized a portion of the proceeds from the issuance of the 2019 Notes to settle its outstanding <ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" contextRef="PAsOn07_16_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">2.125</ix:nonFraction>% Convertible Senior Notes due 2021 (the &#8220;2016 Notes&#8221;) during the third quarter of 2019. On July&#160;16, 2019, the Company entered into separate privately negotiated agreements with certain holders of the 2016 Notes to exchange an aggregate of $<ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="PAsOn07_16_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="INF" scale="6" format="ixt:numdotdecimal">92.0</ix:nonFraction>&#160;million principal aggregate amount of the 2016 Notes for shares of the Company&#8217;s common stock, together with cash, in private placement transactions (the &#8220;Note Exchanges&#8221;). On July&#160;19, 2019 and July&#160;22, 2019, the Company used approximately $<ix:nonFraction name="us-gaap:EarlyRepaymentOfSeniorDebt" contextRef="P07_19_2019To07_19_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">92.3</ix:nonFraction>&#160;million (including $<ix:nonFraction name="us-gaap:DebtInstrumentIncreaseAccruedInterest" contextRef="P07_19_2019To07_19_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.3</ix:nonFraction>&#160;million of accrued interest) and <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" contextRef="P07_22_2019To07_22_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">1,850,155</ix:nonFraction> shares of its common stock valued at $<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" contextRef="P07_22_2019To07_22_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">161.0</ix:nonFraction>&#160;million to settle the Note Exchanges for total consideration of $<ix:nonFraction name="us-gaap:DebtConversionConvertedInstrumentAmount1" contextRef="P07_22_2019To07_22_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">253.3</ix:nonFraction>&#160;million, of which $<ix:nonFraction name="us-gaap:DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent" contextRef="PAsOn07_22_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">163.6</ix:nonFraction>&#160;million was allocated to reacquiring the equity component of the 2016 Notes. The Company allocated the consideration transferred to the liability and equity components using the same proportions as the initial carrying value of the 2016 Notes. The transaction resulted in a loss on extinguishment of debt of $<ix:nonFraction name="us-gaap:GainsLossesOnExtinguishmentOfDebt" contextRef="P01_01_2020To09_30_2020_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">4.6</ix:nonFraction>&#160;million in the Company&#8217;s consolidated statements of comprehensive income (loss) for the three and nine months ended September&#160;30, 2019. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On July&#160;19, 2019, the Company issued a Notice of Redemption in respect of the 2016 Notes, which provided that, on September&#160;23, 2019, the Company would redeem all 2016 Notes that had not been converted, repurchased or exchanged prior to such date at a redemption price in cash equal to <ix:nonFraction name="us-gaap:DebtInstrumentRedemptionPricePercentage" contextRef="P09_01_2019To09_23_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">100</ix:nonFraction>% of the principal amount thereof plus accrued and unpaid interest. On September&#160;23, 2019, the Company used $<ix:nonFraction name="us-gaap:EarlyRepaymentOfSeniorDebt" contextRef="P09_01_2019To09_23_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">23.0</ix:nonFraction>&#160;million and <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" contextRef="P09_01_2019To09_23_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">466,045</ix:nonFraction> shares of its common stock valued at $<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" contextRef="P09_01_2019To09_23_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">37.8</ix:nonFraction>&#160;million to settle the remaining 2016 Notes for a total of $<ix:nonFraction name="rgen:DebtInstrumentFaceAmountRemaining" contextRef="PAsOn09_23_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">60.8</ix:nonFraction>&#160;million, of which $<ix:nonFraction name="us-gaap:DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent" contextRef="PAsOn09_23_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">38.3</ix:nonFraction>&#160;million was allocated to reacquiring the equity component of the 2016 Notes. This transaction resulted in a loss on extinguishment of debt of $<ix:nonFraction name="us-gaap:GainsLossesOnExtinguishmentOfDebt" contextRef="P09_01_2019To09_23_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">1.1</ix:nonFraction>&#160;million recorded on the Company&#8217;s consolidated statements of comprehensive income (loss). The total loss for the three and nine months ended September&#160;30, 2019 of $<ix:nonFraction name="us-gaap:GainsLossesOnExtinguishmentOfDebt" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">5.7</ix:nonFraction>&#160;million represents the difference between the fair value of the liability component of the 2016 Notes and its related carrying value immediately before the exchange. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The fair value of the liability component was calculated using a discounted cash flow technique with an effective interest rate of <ix:nonFraction name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" contextRef="PAsOn09_30_2020_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">3.9</ix:nonFraction>%, representing the estimated nonconvertible debt borrowing rate with a maturity as of the measurement date consistent with the 2016 Notes maturity date of <ix:nonNumeric name="us-gaap:DebtInstrumentMaturityDate" contextRef="P07_19_2019To07_19_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" format="ixt:datemonthdayyearen">June 1, 2021</ix:nonNumeric>. In addition, in accordance with this guidance, a portion of the fair value of the consideration transferred is allocated to the reacquisition of the equity component, which is the difference between the fair value of the consideration transferred and the fair value of the liability component immediately before the exchange. As a result, on a gross basis, $<ix:nonFraction name="us-gaap:DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent" contextRef="PAsOn09_30_2020_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">200.1</ix:nonFraction>&#160;million was allocated to the reacquisition of the equity component of the original instrument, which is recorded net of deferred taxes within additional <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">paid-in</div> capital on the Company&#8217;s consolidated balance sheet.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The cash conversion feature of the 2016 Notes required bifurcation from the 2016 Notes and was initially accounted for as an equity instrument classified to stockholders&#8217; equity, as the conversion feature was determined to be clearly and closely related to the Company&#8217;s stock. Based on market data available for publicly traded, senior, unsecured corporate bonds issued by companies in the same industry and asset base and with similar maturity, the Company estimated the implied interest rate, assuming no conversion option. Assumptions used in the estimate represent what market participants would use in pricing the liability component, including market interest rates, credit standing, and yield curves, all of which are defined as Level&#160;2 observable inputs. The estimated implied interest rate was applied to the 2016 Notes, which resulted in a fair value of the liability component of $<ix:nonFraction name="us-gaap:DebtInstrumentFairValue" contextRef="PAsOn09_30_2020_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">96.3</ix:nonFraction>&#160;million upon issuance, calculated as the present value of implied future payments based on the $<ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="PAsOn09_30_2020_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="INF" scale="6" format="ixt:numdotdecimal">115.0</ix:nonFraction>&#160;million aggregate principal amount. The equity component of the 2016 Notes was recognized as a debt discount, recorded in additional <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">paid-in</div> capital, and represents the difference between the aggregate principal of the 2016 Notes and the fair value of the 2016 Notes without conversion option on their issuance date.&#160;The debt discount was amortized to interest expense using the effective interest method over five years, or the life of the 2016 Notes.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Interest expense recognized on the 2016 Notes for the three months ended September&#160;30, 2019 was $<ix:nonFraction name="us-gaap:InterestExpenseDebtExcludingAmortization" contextRef="P07_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.1</ix:nonFraction>&#160;million, $<ix:nonFraction name="us-gaap:AmortizationOfDebtDiscountPremium" contextRef="P07_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.5</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:AmortizationOfFinancingCosts" contextRef="P07_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.1</ix:nonFraction>&#160;million for the contractual coupon interest, the accretion of the debt discount and the amortization of the debt issuance costs, respectively. Interest expense recognized on the 2016 Notes for the nine months ended September&#160;30, 2019 was&#160;$<ix:nonFraction name="us-gaap:InterestExpenseDebtExcludingAmortization" contextRef="P01_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">1.3</ix:nonFraction>&#160;million, $<ix:nonFraction name="us-gaap:AmortizationOfDebtDiscountPremium" contextRef="P01_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">2.4</ix:nonFraction>&#160;million and&#160;$<ix:nonFraction name="us-gaap:AmortizationOfFinancingCosts" contextRef="P01_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.4</ix:nonFraction> million&#160;for the contractual coupon interest, the accretion of the debt discount and the amortization of the debt issuance costs, respectively. The effective interest rate on the 2016 Notes was <ix:nonFraction name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" contextRef="PAsOn09_30_2020_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">6.6</ix:nonFraction>%, which included the interest on the 2016 Notes, amortization of the debt discount and debt issuance costs. </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </ix:continuation> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">21 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"></div> </div> </div> </div> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:nonNumeric name="us-gaap:StockholdersEquityNoteDisclosureTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15537825">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">9.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Stockholders&#8217; Equity </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Public Offerings of Common Stock </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On July&#160;19, 2019, the Company completed a public offering in which <ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="PAsOn07_19_2019" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">1,587,000</ix:nonFraction> shares of its common stock, including the underwriters&#8217; exercise in full of an option to purchase an additional <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="P07_19_2019To07_19_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_UnderwriterMembersrtTitleOfIndividualAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">207,000</ix:nonFraction> shares, were sold to the public at a price of $<ix:nonFraction name="rgen:CommonStockIssuePricePerShare" contextRef="PAsOn07_19_2019" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">87.00</ix:nonFraction> per share (the &#8220;Stock Offering&#8221;). The net proceeds of the Stock Offering, after deducting underwriting discounts and commissions and other estimated offering expenses payable by the Company, were approximately $<ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfCommonStock" contextRef="P07_19_2019To07_19_2019" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">131.1</ix:nonFraction>&#160;million. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On May&#160;3, 2019, the Company completed a public offering in which <ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="PAsOn05_03_2019" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">3,144,531</ix:nonFraction> shares of its common stock, which includes the underwriters&#8217; exercise in full of an option to purchase up to an additional <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="P05_03_2019To05_03_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_UnderwriterMembersrtTitleOfIndividualAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">410,156</ix:nonFraction> shares, were sold to the public at a price of $<ix:nonFraction name="rgen:CommonStockIssuePricePerShare" contextRef="PAsOn05_03_2019" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">64.00</ix:nonFraction> per share. The total proceeds received by the Company from this offering, net of underwriting discounts and commissions and other estimated offering expenses payable by the Company, totaled approximately $<ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfCommonStock" contextRef="P05_03_2019To05_03_2019" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">189.6</ix:nonFraction>&#160;million. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Stock Option and Incentive Plans </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">At the Company&#8217;s 2018 annual meeting of shareholders held on May&#160;16, 2018, the Company&#8217;s shareholders approved the 2018 Stock Option and Incentive Plan (the &#8220;2018 Plan&#8221;). Under the 2018 Plan the number of shares of the Company&#8217;s common stock that are reserved and available for issuance is <ix:nonFraction name="us-gaap:CommonStockCapitalSharesReservedForFutureIssuance" contextRef="PAsOn12_31_2018_StockOptionAndIncentivePlanMemberusgaapPlanNameAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">2,778,000</ix:nonFraction> plus the number of shares of common stock available for issuance under the Company&#8217;s Amended and Restated 2012 Stock Option and Incentive Plan (the &#8220;2012 Plan&#8221;). The shares of common stock underlying any awards under the 2018 Plan and 2012 Plan (together, the &#8220;Plans&#8221;) that are forfeited, canceled or otherwise terminated (other than by exercise) shall be added back to the shares of stock available for issuance under the 2018 Plan. At September&#160;30, 2020, <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" contextRef="PAsOn09_30_2020_StockOptionAndIncentivePlanMemberusgaapPlanNameAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">2,325,314</ix:nonFraction> shares were available for future grant under the 2018 Plan. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Stock-Based Compensation </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">For the three months ended September&#160;30, 2020 and 2019, th<div style="display:inline;">e</div>&#160;Company recorded stock-based compensation expense of $<ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">4.2</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">3.2</ix:nonFraction>&#160;million, respectively, for share-based awards granted under the Plans. For the nine months ended September&#160;30, 2020 and 2019, the Company recorded stock-based compensation expense of $<ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">12.5</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">9.5</ix:nonFraction>&#160;million, respectively. <ix:nonNumeric name="us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15537822">The following table presents stock-based compensation expense in the Company&#8217;s consolidated statements of comprehensive income (loss):</ix:nonNumeric> </div></div> <ix:continuation id="TextSelection_15537822"> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 71%;"></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cost of product revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P07_01_2020To09_30_2020_CostOfSalesMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">563</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P07_01_2019To09_30_2019_CostOfSalesMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">375</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P01_01_2020To09_30_2020_CostOfSalesMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,421</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P01_01_2019To09_30_2019_CostOfSalesMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">992</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Research and development</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P07_01_2020To09_30_2020_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">326</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P07_01_2019To09_30_2019_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">351</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P01_01_2020To09_30_2020_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,092</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P01_01_2019To09_30_2019_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">992</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Selling, general and administrative</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P07_01_2020To09_30_2020_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,336</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P07_01_2019To09_30_2019_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">2,449</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P01_01_2020To09_30_2020_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">9,979</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P01_01_2019To09_30_2019_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">7,475</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total stock-based compensation</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">4,225</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">3,175</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">12,492</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">9,459</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:continuation> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The 2018 Plan allows for the granting of incentive and nonqualified options to purchase shares of common stock, restricted stock and other equity awards. Employee grants under the Plans generally vest over a <span style="-sec-ix-hidden:hidden15372903">thre</span>e to <span style="-sec-ix-hidden:hidden15372906">five-year</span> period, with <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" contextRef="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MinimumMembersrtRangeAxis_ShareBasedCompensationAwardTrancheOneMemberusgaapVestingAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">20</ix:nonFraction>%-<ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" contextRef="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MaximumMembersrtRangeAxis_ShareBasedCompensationAwardTrancheOneMemberusgaapVestingAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">33</ix:nonFraction>%</div> vesting on the first anniversary of the date of grant and the remainder vesting in equal yearly installments thereafter. Nonqualified options issued to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-employee</div> directors&#160;under the Plans generally vest over one year. In the first quarter of 2018, to create a longer-term retention incentive, the Company&#8217;s Compensation Committee granted long-term incentive compensation awards to its Chief Executive Officer consisting of both stock options and restricted stock units (&#8220;RSUs&#8221;) that are subject to time-based vesting over <ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" contextRef="P01_01_2020To09_30_2020_NonEmployeeDirectorStockOptionMemberusgaapAwardTypeAxis" format="ixt-sec:durwordsen">nine years</ix:nonNumeric>. Options granted under the Plans have a maximum term of <ix:nonNumeric name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" contextRef="P01_01_2020To09_30_2020" format="ixt-sec:durwordsen">ten years</ix:nonNumeric> from the date of grant and generally, the exercise price of the stock options equals the fair market value of the Company&#8217;s common stock on the date of grant. At September&#160;30, 2020, options to purchase <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="PAsOn09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">723,914</ix:nonFraction> shares and <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="PAsOn09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">675,567</ix:nonFraction> stock units were outstanding under the Plans.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company uses the Black-Scholes option pricing model to calculate the fair value of stock option awards on the grant date, and the Company uses the value of the common stock as of the grant date to value RSUs. The Company measures stock-based compensation cost at the grant date based on the estimated fair value of the award. 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 issues performance stock units to certain employees that are tied to company and/or individual performance metrics and recognizes expense on performance-based awards over the vesting period based on the probability that the performance metrics will be achieved. The Company recognizes stock-based compensation expense for options that are ultimately expected to vest, and accordingly, such compensation expense has been adjusted for estimated forfeitures. </div></div></div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> </div></ix:nonNumeric> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">22 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelection_15537825" continuedAt="TextSelectionAppend_15537825_1"><ix:nonNumeric name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Information regarding option activity for the nine months ended September&#160;30, 2020 under the Plans is summarized below: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 61%; font-family: &quot;Times New Roman&quot;;"></td>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="width: 4%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Shares</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">average</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">exercise</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">price</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/> Average<br/> Remaining<br/> Contractual<br/> Term</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;Years)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Aggregate<br/> Intrinsic&#160;Value</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;Thousands)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Options outstanding at December&#160;31, 2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="PAsOn12_31_2019" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">957,559</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="PAsOn12_31_2019" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">30.81</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Granted</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">69,698</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">104.61</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Exercised</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">303,343</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">23.37</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Forfeited/expired/cancelled</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;">$</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Options outstanding at September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="PAsOn09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">723,914</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="PAsOn09_30_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">41.03</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" contextRef="P01_01_2020To09_30_2020" format="ixt-sec:duryear">7.02</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">77,102</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Options exercisable at September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" contextRef="PAsOn09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">339,191</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" contextRef="PAsOn09_30_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">31.00</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" contextRef="P01_01_2020To09_30_2020" format="ixt-sec:duryear">6.05</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">39,528</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Vested and expected to vest at September&#160;30, 2020<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">(1)</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" contextRef="PAsOn09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal" id="Fact_15357651">693,689</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" contextRef="P01_01_2020To09_30_2020" format="ixt-sec:duryear" id="Fact_15357652">6.98</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal" id="Fact_15357653">74,178</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr> </table> <div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px; table-layout: fixed;">
<tr style="page-break-inside: avoid;">
<td style="width: 9%;">&#160;</td>
<td style="width: 4%; vertical-align: top;;text-align:left;">(1)</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;">Represents the number of vested options as of September&#160;30, 2020 plus the number of unvested options expected to vest as of September&#160;30, 2020 based on the unvested outstanding options at September&#160;30, 2020 adjusted for estimated forfeiture rates of <ix:nonFraction name="rgen:PercentageOfSharesSubjectToForfeiture" contextRef="PAsOn09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_NonExecutiveMembersrtTitleOfIndividualAxis" unitRef="Unit_pure" decimals="2" scale="-2" format="ixt:numdotdecimal">8</ix:nonFraction>% for awards granted to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-executive</div> level employees and <ix:nonFraction name="rgen:PercentageOfSharesSubjectToForfeiture" contextRef="PAsOn09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_ExecutiveOfficerMembersrtTitleOfIndividualAxis" unitRef="Unit_pure" decimals="2" scale="-2" format="ixt:numdotdecimal">3</ix:nonFraction>% for awards granted to executive level employees.</div> </td> </tr> </table> </ix:nonNumeric> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The aggregate intrinsic value in the table above represents the total <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">pre-tax</div> intrinsic value (the difference between the closing price of the common stock on September&#160;30, 2020, the last business day of the third quarter of 2020, of $<ix:nonFraction name="us-gaap:SharePrice" contextRef="PAsOn09_30_2020" unitRef="Unit_USD_per_Share" decimals="INF" scale="0" format="ixt:numdotdecimal">147.54</ix:nonFraction> per share and the exercise price of each <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">in-the-money</div></div> option) that would have been received by the option holders had all option holders exercised their options on September&#160;30, 2020. The aggregate intrinsic value of stock options exercised during the nine months ended September&#160;30, 2020 and 2019 was $<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">30.7</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">5.2</ix:nonFraction>&#160;million, respectively.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The weighted average grant date fair value of options granted during the nine months ended September&#160;30, 2020 and 2019 was $<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">48.13</ix:nonFraction> and $<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">30.07</ix:nonFraction>, respectively. The total fair value of stock options that vested during the nine months ended September&#160;30, 2020 and 2019 was $<ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">2.6</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">2.9</ix:nonFraction>&#160;million, respectively. </div></div> <ix:nonNumeric name="us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The fair value of stock units is calculated using the closing price of the Company&#8217;s common stock on the date of grant. Information regarding stock unit activity, which includes activity for restricted stock units and performance stock units, for the nine months ended September&#160;30, 2020 under the Plans is summarized below: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 65%; font-family: &quot;Times New Roman&quot;;"></td>
<td style="width: 6%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="width: 6%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td>
<td style="font-family: &quot;Times New Roman&quot;;"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Shares</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/> Average<br/> Remaining<br/> Contractual<br/> Term</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in Years)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Aggregate<br/> Intrinsic Value</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;Thousands)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Unvested at December&#160;31, 2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="PAsOn12_31_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">734,984</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Awarded</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">187,942</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Vested</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">225,204</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Forfeited/expired/cancelled</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">22,155</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Unvested at September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="PAsOn09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">675,567</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" format="ixt-sec:duryear">3.39</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" contextRef="PAsOn09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">99,673</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Vested and expected to vest at September&#160;30, 2020<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">(1)</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal" id="Fact_15357669">650,436</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm" contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" format="ixt-sec:duryear" id="Fact_15357663">3.20</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" contextRef="PAsOn09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal" id="Fact_15357671">95,965</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr> </table> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px; table-layout: fixed;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%;">&#160;</td>
<td style="width: 5%;vertical-align: top;;text-align:left;">(1)</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;">Represents the number of vested stock units as of September&#160;30, 2020 plus the number of unvested stock units expected to vest as of September&#160;30, 2020 based on the unvested outstanding stock units at September&#160;30, 2020 adjusted for estimated forfeiture rates of <ix:nonFraction name="rgen:PercentageOfSharesSubjectToForfeiture" contextRef="PAsOn09_30_2020_NonExecutiveMembersrtTitleOfIndividualAxis_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_pure" decimals="2" scale="-2" format="ixt:numdotdecimal">8</ix:nonFraction>% for awards granted to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-executive</div> level employees and <ix:nonFraction name="rgen:PercentageOfSharesSubjectToForfeiture" contextRef="PAsOn09_30_2020_ExecutiveOfficerMembersrtTitleOfIndividualAxis_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_pure" decimals="2" scale="-2" format="ixt:numdotdecimal">3</ix:nonFraction>% for awards granted to executive level employees.</div> </td> </tr> </table> </ix:nonNumeric> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The aggregate intrinsic value in the table above represents the total <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">pre-tax</div> intrinsic value (equal to the closing price of the common stock on September&#160;30, 2020, the last business day of the third quarter of 2020, of $<ix:nonFraction name="us-gaap:SharePrice" contextRef="PAsOn09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="INF" scale="0" format="ixt:numdotdecimal">147.54</ix:nonFraction> per share, as stock units do not have an exercise price) that would have been received by the stock unit holders had all holders exercised on September&#160;30, 2020. The aggregate intrinsic value of stock units vested during the nine months ended September&#160;30, 2020 and 2019 was $<ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">25.0</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" contextRef="P01_01_2019To09_30_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">15.5</ix:nonFraction>&#160;million, respectively.</div> </ix:continuation> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">23 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"></div> </div> </div> </div> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelectionAppend_15537825_1"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The weighted average grant date fair value of stock units vested during the nine months ended September&#160;30, 2020 and 2019 was $<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">66.00</ix:nonFraction> and $<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="P01_01_2019To09_30_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">33.46</ix:nonFraction>, respectively. The total fair value of stock units that vested during the nine months ended September&#160;30, 2020 and 2019 was $<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">9.8</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" contextRef="P01_01_2019To09_30_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">7.6</ix:nonFraction>&#160;million, respectively. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">As of September&#160;30, 2020, there was $<ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" contextRef="PAsOn09_30_2020" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">47.0</ix:nonFraction>&#160;million of total unrecognized compensation cost related to unvested share-based awards.&#160;This cost is expected to be recognized over a weighted average remaining requisite service period of <ix:nonNumeric name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" contextRef="P01_01_2020To09_30_2020" format="ixt-sec:duryear">3.61</ix:nonNumeric> years. The Company expects <ix:nonFraction name="rgen:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" contextRef="PAsOn09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">1,833,239</ix:nonFraction> unvested options and stock units to vest over the next <ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" contextRef="P01_01_2020To09_30_2020_UnvestedOptionsMemberusgaapAwardTypeAxis" format="ixt-sec:durwordsen">five years</ix:nonNumeric>. </div></div> </ix:continuation> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <ix:nonNumeric name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">10.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Commitments and Contingencies </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Licensing and Research Agreements </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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 which 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&#160;30, 2020 and 2019. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In June 2018, the Company secured an agreement with Navigo<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;Proteins</div>&#160;for the exclusive <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">co-development</div> of multiple affinity ligands for which Repligen holds commercialization rights. The Company is manufacturing and has agreed to supply the first of these ligands, <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">NGL-Impact</div><div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div>, exclusively to Purolite Life Sciences (&#8220;Purolite&#8221;), who will pair 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 <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">NGL-Impact</div> and other potential additional affinity ligands that may advance from the Company&#8217;s Navigo collaboration.<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">In September 2020, Repligen and Navigo Proteins successfully completed co-development of an affinity ligand targeting the SARS-CoV-2 spike protein, to be utilized in the purification of COVID-19 vaccines. The Company has proceeded with scaling up and manufacturing&#160;this ligand&#160;and the development and validation of the related affinity chromatography resin, which will be marketed by Repligen.<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>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 $<ix:nonFraction name="us-gaap:LongTermPurchaseCommitmentAmount" contextRef="P07_01_2020To09_30_2020_NGLImpactAMembersrtProductOrServiceAxis_ResearchAndDevelopmentArrangementMemberusgaapLongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.2</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:LongTermPurchaseCommitmentAmount" contextRef="P01_01_2020To09_30_2020_NGLImpactAMembersrtProductOrServiceAxis_ResearchAndDevelopmentArrangementMemberusgaapLongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.4</ix:nonFraction>&#160;million during the three and nine months ended September&#160;30, 2020<div style="letter-spacing: 0px; top: 0px;;display:inline;">, respectively<div style="letter-spacing: 0px; top: 0px;;display:inline;">.</div></div></div></ix:nonNumeric> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <ix:nonNumeric name="us-gaap:ComprehensiveIncomeNoteTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">11.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accumulated Other Comprehensive Loss </div></div></div> </td> </tr> </table> <ix:nonNumeric name="us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following shows the changes in the components of accumulated other comprehensive loss for the nine months ended September&#160;30, 2020 which consisted of only foreign currency translation adjustments for the periods shown (amounts in thousands): </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 86%;"></td>
<td style="width: 6%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Foreign</div></div></td>
<td style="vertical-align: bottom;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Currency</div></div></td>
<td style="vertical-align: bottom;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Translation</div></div></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Adjustment</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance as of December&#160;31, 2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn12_31_2019_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">15,027</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other comprehensive income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" contextRef="P01_01_2020To09_30_2020_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">5,304</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance as of September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="PAsOn09_30_2020_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_USD" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">9,723</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:nonNumeric></ix:nonNumeric> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <ix:nonNumeric name="us-gaap:IncomeTaxDisclosureTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15535798">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">12.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Income Taxes </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company&#8217;s effective tax rate for the three and nine months ended<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;September</div>&#160;30, 2020 was <ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:numdotdecimal">18.0</ix:nonFraction>% and <ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:numdotdecimal">9.5</ix:nonFraction>%, compared to <ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:numdotdecimal">0.7</ix:nonFraction>% and <ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_pure" decimals="3" scale="-2" format="ixt:numdotdecimal">18.3</ix:nonFraction>% for the corresponding periods in the prior year. The effective tax rates for the three and nine months ended <div style="letter-spacing: 0px; top: 0px;;display:inline;">September</div>&#160;30, 2020 and 2019 were lower than the U.S. statutory rate of <ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">21</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction>% primarily due to windfall benefits on stock option exercises and the vesting of stock units. </div></div></ix:nonNumeric><ix:continuation id="TextSelection_15535798" continuedAt="TextSelectionAppend_15535798_1"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company is subject to a territorial tax system under the Tax Cuts and Jobs Act (&#8220;TCJA&#8221;) enacted in December 2017, in which the Company is required to provide for tax on Global Intangible <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Low-Taxed</div> Income (&#8220;GILTI&#8221;) earned by certain foreign subsidiaries. The Company has adopted an accounting policy to provide for the tax expense related to GILTI in the year the tax is incurred as a period expense.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">On March&#160;27, 2020, President Trump signed the $2.2 trillion bipartisan Coronavirus Aid, Relief, and Economic Security (&#8220;CARES&#8221;) Act. The CARES Act, the third congressional bill to address <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">COVID-19,</div> provides for loans and other benefits to businesses, expanded unemployment insurance, direct payments to those with middle-income and below wages, new appropriations funding for healthcare and other priorities, and tax changes, including deferrals of employer payroll tax</div> </ix:continuation></div> </div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">24 </div></div></div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelectionAppend_15535798_1"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">liabilities, coupled with an employee retention tax credit and rollbacks of TCJA limitations on net operating losses (&#8220;NOLs&#8221;) and the Section&#160;163(j) business interest limitation and a TCJA technical correction on qualified improvement property. The Company evaluated the provisions of the CARES Act and no provision had a material effect on the Company&#8217;s financial position or results of operations at September&#160;30, 2020 and the three and nine months then ended.</div> <ix:nonNumeric name="us-gaap:SummaryOfIncomeTaxExaminationsTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company&#8217;s tax returns are subject to examination by federal, state and international tax authorities for the following periods: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 85%; font-family: 'Times New Roman';"></td>
<td style="width: 4%; vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="font-family: 'Times New Roman';"></td>
<td style="font-family: 'Times New Roman';"></td>
<td style="font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.5pt;"> <div style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Jurisdiction</div></div></div> </td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fiscal Years<br/> Subject to<br/> Examination</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">United States - federal and state</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><ix:nonNumeric name="us-gaap:OpenTaxYear" contextRef="P01_01_2020To09_30_2020_EarliestTaxYearMemberusgaapTaxPeriodAxis_USsrtStatementGeographicalAxis">2016</ix:nonNumeric>-<ix:nonNumeric name="us-gaap:OpenTaxYear" contextRef="P01_01_2020To09_30_2020_LatestTaxYearMemberusgaapTaxPeriodAxis_USsrtStatementGeographicalAxis">2019</ix:nonNumeric></div></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Sweden</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:OpenTaxYear" contextRef="P01_01_2020To09_30_2020_EarliestTaxYearMemberusgaapTaxPeriodAxis_SEsrtStatementGeographicalAxis">2013</ix:nonNumeric>-<ix:nonNumeric name="us-gaap:OpenTaxYear" contextRef="P01_01_2020To09_30_2020_LatestTaxYearMemberusgaapTaxPeriodAxis_SEsrtStatementGeographicalAxis">2019</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Germany</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:center;"><ix:nonNumeric name="us-gaap:OpenTaxYear" contextRef="P01_01_2020To09_30_2020_DEsrtStatementGeographicalAxis_LatestTaxYearMemberusgaapTaxPeriodAxis">2019</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Netherlands</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonNumeric name="us-gaap:OpenTaxYear" contextRef="P01_01_2020To09_30_2020_EarliestTaxYearMemberusgaapTaxPeriodAxis_NLsrtStatementGeographicalAxis">2013</ix:nonNumeric>-<ix:nonNumeric name="us-gaap:OpenTaxYear" contextRef="P01_01_2020To09_30_2020_LatestTaxYearMemberusgaapTaxPeriodAxis_NLsrtStatementGeographicalAxis">2019</ix:nonNumeric></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:nonNumeric></ix:continuation><ix:nonNumeric name="us-gaap:EarningsPerShareTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15358132"><div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">13.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Earnings Per Share </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company reports earnings per share in accordance with ASC 260, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Earnings Per Share,&#8221;</div></div> which establishes standards for computing and presenting earnings per share. Basic earnings per share is computed by dividing net income available to common shareholders by the weighted average number of common shares outstanding during the period. Diluted earnings per share is computed by dividing net income available to common shareholders by the weighted-average number of common shares and dilutive common share equivalents then outstanding. Potential common share equivalents consist of restricted stock awards, performance stock units and the incremental common shares issuable upon the exercise of stock options. Under the treasury stock method, unexercised <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">&#8220;in-the-money&#8221;</div></div> stock options and warrants are assumed to be exercised at the beginning of the period or at issuance, if later. The assumed proceeds are then used to purchase common shares at the average market price during the period. In periods when the Company has a net loss, stock awards are excluded from the calculation of earnings per share as their inclusion would have an antidilutive effect.</div> <ix:nonNumeric name="us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Basic and diluted weighted average shares outstanding were as follows: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 69%;"></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three Months Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands,&#160;except&#160;per&#160;share&#160;data)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">14,552</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">1,659</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">40,228</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD" decimals="-3" scale="3" format="ixt:numdotdecimal">17,807</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Weighted average shares used in computing net income per share -<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">diluted</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">52,545</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">50,852</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">52,341</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">47,087</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Effect of dilutive shares:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Stock options and restricted stock awards</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesRestrictedStock" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">916</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesRestrictedStock" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">957</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesRestrictedStock" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">951</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesRestrictedStock" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">843</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Dilutive effect of unvested performance stock units</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">8</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">8</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Dilutive potential common shares</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">924</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">957</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">959</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">843</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Weighted average shares used in computing net income per share - diluted</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">53,469</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">51,809</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">53,300</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_shares" decimals="-3" scale="3" format="ixt:numdotdecimal">47,930</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Earnings per share:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Basic</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.28</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.03</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.77</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.38</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Diluted</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.27</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.03</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.75</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">0.37</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> </ix:nonNumeric></ix:nonNumeric></div> </div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"></div> </div> </div> </div> <div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelection_15358132" continuedAt="TextSelectionAppend_15358132_1"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">At September&#160;30, 2020, there were outstanding options to purchase <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="PAsOn09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">723,914</ix:nonFraction> shares of the Company&#8217;s common stock at a weighted average exercise price of $<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="PAsOn09_30_2020" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">41.03</ix:nonFraction> per share and <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="PAsOn09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">675,567</ix:nonFraction> shares of common stock issuable upon the vesting of stock units, which include RSUs and performance stock units. For the three and nine months ended September&#160;30, 2020, <ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="P07_01_2020To09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">60,202</ix:nonFraction> and <ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">117,160</ix:nonFraction> shares of the Company&#8217;s common stock were excluded from the calculation of diluted earnings per share 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. </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">At September&#160;30, 2019, there were outstanding options to purchase <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="PAsOn09_30_2019" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">959,916</ix:nonFraction> shares of the Company&#8217;s common stock at a weighted average exercise price of $<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="PAsOn09_30_2019" unitRef="Unit_USD_per_Share" decimals="2" scale="0" format="ixt:numdotdecimal">30.44</ix:nonFraction> per share and <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="PAsOn09_30_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">740,213</ix:nonFraction> shares issuable upon the vesting of stock units. For the three and nine months ended September&#160;30, 2019, <ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="P07_01_2019To09_30_2019" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">47,705</ix:nonFraction> and <ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="P01_01_2019To09_30_2019" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">85,503</ix:nonFraction> shares of the Company&#8217;s common stock were excluded from the calculation of diluted earnings per share 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.</div></div> </ix:continuation> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">25 </div></div></div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelectionAppend_15358132_1"> <div style="text-align: left;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">As provided by the terms of the indenture underlying the </div>2016<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> Notes, the Company had a choice to settl<div style="display:inline;">e</div>&#160;the conversion obligation for the </div>2016<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> Notes in cash, shares or any combination of the two.&#160;During the third quarter of </div>2019<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, the Company settled the remaining </div>2016<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> Notes for a total aggregate principal of $</div><ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="PAsOn09_30_2020_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">115.0</ix:nonFraction><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;million and </div><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" contextRef="P07_01_2020To09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis" unitRef="Unit_shares" decimals="INF" scale="0" format="ixt:numdotdecimal">2,316,200</ix:nonFraction><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> shares of its common stock. As of March&#160;</div>31<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, </div>2019<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, the par value of the </div>2016<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> Notes is not included in the calculation of diluted earnings per share, but the dilutive effect of the conversion premium is considered in the calculation of diluted earnings per share using the treasury stock method. The dilutive impact of the </div>2016<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> Notes was based on the difference between the Company&#8217;s current period average stock price and the conversion price of the </div>2016<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> Notes, provided there was a premium.</div></div> </div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In July 2019, the Company issued $<ix:nonFraction name="us-gaap:DebtInstrumentFaceAmount" contextRef="PAsOn07_31_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis" unitRef="Unit_USD" decimals="INF" scale="6" format="ixt:numdotdecimal">287.5</ix:nonFraction>&#160;million aggregate principal amount of the 2019 Notes. As provided by the terms of the indenture underlying the 2019 Notes, conversion of the 2019 Notes will be settled in cash, shares of the Company&#8217;s common stock or a combination thereof, at the Company&#8217;s election. As of <div style="letter-spacing: 0px; top: 0px;;display:inline;">September</div>&#160;30, 2020, the 2019 Notes were not convertible. The Company currently intends to settle the par value of the 2019 Notes in cash and any excess conversion premium in shares. The Company applies the provisions of ASC 260, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Earnings Per Share&#8221;,</div></div> Subsection <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-45-44,</div></div> to determine the diluted weighted average shares outstanding as it relates to the conversion spread on the 2019 Notes. Accordingly, the par value of the 2019 Notes is not included in the calculation of diluted income per share, but the dilutive effect of the conversion premium is considered in the calculation of diluted net income per share using the treasury stock method. The dilutive impact of the 2019 Notes is based on the difference between the Company&#8217;s current period average stock price and the conversion price of the 2019 Notes, provided there is a premium. Pursuant to this accounting standard, there is no dilution from the accreted principal of the 2019 Notes for the three and nine months ended September&#160;30, 2020.</div> </ix:continuation> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <ix:nonNumeric name="us-gaap:RelatedPartyTransactionsDisclosureTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">14.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Related Party Transactions </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Certain facilities leased by Spectrum are owned by Roy Eddleman, the former owner of Spectrum. As of September&#160;30, 2020, Mr.&#160;Eddleman owned greater than <ix:nonFraction name="us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners" contextRef="PAsOn09_30_2020_MinimumMembersrtRangeAxis_PrincipalOwnerMemberusgaapRelatedPartyTransactionsByRelatedPartyAxis_SpectrumIncMembersrtOwnershipAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">5</ix:nonFraction>% of the Company&#8217;s outstanding shares and the Company considers him to be a related party. The lease amounts paid to this shareholder prior to the public offering were negotiated in connection with the Spectrum Acquisition. The Company incurred rent expense totaling $<ix:nonFraction name="us-gaap:OperatingLeasesRentExpenseNet" contextRef="P07_01_2020To09_30_2020_SpectrumIncMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.1</ix:nonFraction>&#160;million and $<ix:nonFraction name="us-gaap:OperatingLeasesRentExpenseNet" contextRef="P01_01_2020To09_30_2020_SpectrumIncMemberusgaapBusinessAcquisitionAxis" unitRef="Unit_USD" decimals="-5" scale="6" format="ixt:numdotdecimal">0.5</ix:nonFraction>&#160;million for the three and nine months ended September&#160;30, 2020 related to these leases. </div></div></ix:nonNumeric> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <ix:nonNumeric name="us-gaap:SegmentReportingDisclosureTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true" continuedAt="TextSelection_15536034">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">15.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Segment Reporting </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company views its operations, makes decisions regarding how to allocate resources and manages its business as <ix:nonFraction name="us-gaap:NumberOfOperatingSegments" contextRef="P01_01_2020To09_30_2020" unitRef="Unit_Segment" decimals="INF" scale="0" format="ixt-sec:numwordsen">one</ix:nonFraction> reportable segment and one reporting unit. As a result, the financial information disclosed herein represents all of the material financial information related to the Company. </div></div> <ix:nonNumeric name="us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" contextRef="P01_01_2020To09_30_2020_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" escape="true"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table represents the Company&#8217;s total revenue by geographic area (based on the location of the customer): </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 71%;"></td>
<td style="width: 6%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended<br/> September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended<br/> September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue by customers&#8217; geographic locations:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">North America</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P07_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">50</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P07_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">54</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P01_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">48</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P01_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">51</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Europe</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P07_01_2020To09_30_2020_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">36</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P07_01_2019To09_30_2019_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">33</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P01_01_2020To09_30_2020_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">38</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P01_01_2019To09_30_2019_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">37</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; background-color: rgba(255, 255, 255, 0);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">APAC<div style="letter-spacing: 0px; top: 0px;;display:inline;">/Other</div></div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P07_01_2020To09_30_2020_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">14</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P07_01_2019To09_30_2019_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">13</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P01_01_2020To09_30_2020_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">14</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P01_01_2019To09_30_2019_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">12</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);">%&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P07_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">100</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P07_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">100</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P01_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">100</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P01_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="INF" scale="-2" format="ixt:numdotdecimal">100</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">%&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td> </tr> </table> </ix:nonNumeric></ix:nonNumeric> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div> </div> </div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelection_15536034" continuedAt="TextSelectionAppend_15536034_1"> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Concentrations of Credit Risk and Significant Customers </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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&#160;30, 2020 and December&#160;31, 2019, the Company had no investments associated with foreign exchange contracts, options contracts or other foreign hedging arrangements. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">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 <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">write-off</div> 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.</div> </ix:continuation> <div style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-top: 0px; margin-bottom: 0px;">&#160;</div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">26 </div></div></div></div> </div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"><ix:continuation id="TextSelectionAppend_15536034_1"><ix:nonNumeric name="us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true"><div style="text-align: left;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue from significant customers that represent 10% or more of the Company&#8217;s total revenue is as follows: </div></div> </div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 70%;"></td>
<td style="width: 6%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 6%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cytiva (formerly GE Healthcare)</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P01_01_2019To09_30_2019_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_CytivaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="2" scale="-2" format="ixt:numdotdecimal">12</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">MilliporeSigma</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P07_01_2019To09_30_2019_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MilliporeSigmaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="2" scale="-2" format="ixt:numdotdecimal">14</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P01_01_2020To09_30_2020_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MilliporeSigmaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="2" scale="-2" format="ixt:numdotdecimal">11</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P01_01_2019To09_30_2019_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MilliporeSigmaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis" unitRef="Unit_pure" decimals="2" scale="-2" format="ixt:numdotdecimal">14</ix:nonFraction></td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr> </table> </ix:nonNumeric> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">There were <ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P01_01_2020To09_30_2020_AccountsReceivableMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_CytivaMembersrtMajorCustomersAxis" unitRef="Unit_pure" decimals="0" scale="-2" format="ixt-sec:numwordsen">no</ix:nonFraction> accounts receivable balances as of September&#160;30, 2020 representing 10% or more of the Company&#8217;s total trade accounts receivable and royalties and other receivable balances. As of December&#160;31, 2019, the accounts receivable balance with Cytiva (formerly GE Healthcare) represented <ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="P01_01_2019To12_31_2019_AccountsReceivableMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_CytivaMembersrtMajorCustomersAxis" unitRef="Unit_pure" decimals="2" scale="-2" format="ixt:numdotdecimal">18</ix:nonFraction>% of the Company&#8217;s total trade accounts receivable and royalties and other receivables balances. </div></div> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </ix:continuation><ix:nonNumeric name="us-gaap:SubsequentEventsTextBlock" contextRef="P01_01_2020To09_30_2020" escape="true">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">16.</div></div></div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Subsequent Events </div></div></div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Acquisition of <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-Metallic</div> Solutions, Inc. </div></div></div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">On October&#160;15, 2020, the Company entered into a Stock Purchase Agreement with <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-Metallic</div> Solutions, Inc. (&#8220;NMS&#8221;), a Massachusetts corporation, and William Mallone&#233; and Derek Masser, the legal and beneficial owners of NMS, to purchase NMS, which transaction subsequently closed on October&#160;20, 2020 (the &#8220;NMS Acquisition&#8221;). </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">NMS, which is headquartered in Auburn, Massachusetts, is a manufacturer of fabricated plastics, custom containers, and related assemblies and components used in the manufacturing of biologic drugs. NMS&#8217;s products will complement and expand Repligen&#8217;s <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> product offerings. </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">The Company will account for the NMS Acquisition as a purchase of a 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 NMS Acquisition will be included in the Annual Report on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K</div> for the period ended December&#160;31, 2020. As disclosed in the Quarterly Report on Form 10-Q for the period ended June 30, 2020, the Company voluntarily adopted the amendments to financial disclosure requirements around the significance tests in the &#8220;significant subsidiaries&#8221; definition in Rule 1-02(w), Securities Act Rule 405, and Exchange Act Rule 12b-2. As a result, the Company determined that NMS is not a significant subsidiary and therefore no separate financial statements are required. </div></div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Proposed Acquisition of ARTeSYN Biosolutions </div></div></div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On October 27, 2020, the Company executed an Equity and Asset Purchase Agreement (&#8220;Purchase Agreement&#8221;) with ARTeSYN Biosolutions Holdings Ireland Limited, a company organized under the laws of Ireland (&#8220;ARTeSYN&#8221;), Third Creek Holdings, LLC, a Nevada limited liability company, Alphinity, LLC, a Nevada limited liability company (&#8220;Alphinity&#8221;, and together with Third Creek Holdings, LLC the &#8220;Sellers&#8221;), and Michael Gagne, solely in his capacity as the representative of the Sellers, pursuant to which the Company will acquire (i) all of the outstanding equity securities of ARTeSYN and (ii) certain assets from Alphinity related to the business of ARTeSYN (collectively, the &#8220;ARTeSYN Acquisition&#8221;) for approximately $<ix:nonFraction name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="P10_27_2020To10_27_2020_ArtesynBiosolutionsMemberusgaapBusinessAcquisitionAxis_SubsequentEventMemberusgaapSubsequentEventTypeAxis" unitRef="Unit_USD" decimals="-6" scale="6" format="ixt:numdotdecimal">200</ix:nonFraction> million, comprised of approximately $<ix:nonFraction name="us-gaap:PaymentsToAcquireBusinessesGross" contextRef="P10_27_2020To10_27_2020_ArtesynBiosolutionsMemberusgaapBusinessAcquisitionAxis_SubsequentEventMemberusgaapSubsequentEventTypeAxis" unitRef="Unit_USD" decimals="-6" scale="6" format="ixt:numdotdecimal">130</ix:nonFraction> million in cash to Third Creek and Alphinity and approximately $<ix:nonFraction name="us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" contextRef="P10_27_2020To10_27_2020_ArtesynBiosolutionsMemberusgaapBusinessAcquisitionAxis_SubsequentEventMemberusgaapSubsequentEventTypeAxis" unitRef="Unit_USD" decimals="-6" scale="6" format="ixt:numdotdecimal">70</ix:nonFraction> million in Repligen common stock to Third Creek. Subject to certain closing conditions, including the expiration and termination of the waiting period under the Hart-Scott Rodino Antitrust Improvements Act of 1976, as amended, the transaction is expected to close in the fourth quarter of 2020. </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">ARTeSYN, headquartered in Waterford, Ireland, is a biosystems innovator that has had success with its single-use chromatography and filtration systems, which are considered the gold standard in downstream bioprocessing due to their performance, automation and low hold-up volumes. The proposed ARTeSYN Acquisition, combined with the recent acquisitions of EMT and NMS, further establishes Repligen as a premier player in single-use systems and associated integrated flow path assemblies. ARTeSYN has established downstream processing leadership with a suite of state of the art single-use systems for chromatography, filtration, continuous manufacturing and media/buffer prep workflows. In addition, the Company has integrated unique flow path assemblies utilizing EMT&#8217;s silicone extrusion and molding technology, to deliver highly differentiated, low hold-up volume systems that minimize product loss during processing. </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company will account for the ARTeSYN Acquisition as a purchase of a business under ASC 805. Under the acquisition method of accounting, the net assets of ARTeSYN will be recorded as of the acquisition date, at their respective fair values, and consolidated with those of the Company. The Company has engaged a third-party valuation firm to assist with the valuation of the business acquired, which is expected to be completed in the fourth quarter of 2020. The preparation of the valuation requires the use of significant assumptions and estimates. Critical estimates will include, but are not limited to, future expected cash flows, including projected revenues and expenses, and the applicable discount rates. Actual results may differ from these estimates. </div></div></div></div></ix:nonNumeric> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div></div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">27 </div></div></div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"></div> </div> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><a href="#toc">Table of Contents</a></div></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div id="tx945763_8" style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">ITEM&#160;2. MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS </div></div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Overview </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Repligen and its subsidiaries, collectively doing business as Repligen Corporation (&#8220;Repligen&#8221;, &#8220;we&#8221;, &#8220;our&#8221;, or &#8220;the Company&#8221;) is a global life sciences company that develops and commercializes highly innovated bioprocessing technologies and systems that increase efficiencies and flexibility in the process of manufacturing biological drugs. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">As the overall market for biologics continues to grow and expand, our customers &#8211; primarily large biopharmaceutical companies and contract development and manufacturing organizations &#8211; face critical production cost, capacity, quality and time pressures. Built to address these concerns, our products are helping to 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 &#8211; including monoclonal antibodies (&#8220;mAb&#8221;), recombinant proteins, vaccines and gene therapies &#8211; that are improving human health worldwide. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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 35 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. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Our Products </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">Our bioprocessing business is comprised of four main franchises, three of which we sell directly to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">end-users</div> (Chromatography, Filtration and Process Analytics) and one that we sell primarily through supply agreements (Proteins).</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Direct-to-Customer</div></div> Products </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">Since 2012, we have significantly expanded our <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">direct-to-customer</div></div> presence through our Chromatography, Filtration and Process Analytics franchises, each of which includes novel and differentiated technologies. We have diversified and grown our <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">direct-to-customer</div></div> product offering through internal innovation and through strategic, accretive acquisitions of assets or businesses that leverage existing product lines and/or expand our customer and geographic scope.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">To support our sales growth goals for these products, we make ongoing investments in our commercial organization, our research and development (&#8220;R&amp;D&#8221;) team and our manufacturing capacity. Our commercial and R&amp;D teams work together to develop and launch new products and applications that address specific biomanufacturing challenges, and to build new markets for acquired technologies. We have seven key manufacturing sites across the United States, Sweden and Germany, with additional capacity being added by the end of 2021 in the Netherlands. We regularly evaluate and invest in capacity as needed to ensure timely deliveries and to stay ahead of increased customer demand for our products. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">A substantial piece of our revenue comes from consumable and/or single-campaign <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">(&#8220;single-use&#8221;)</div> products as compared to associated equipment. The customization, scalability and <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">plug-and-play</div></div> convenience of consumable and/or <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> products, and in many cases the closed nature of our technologies, make them ideal for use in biologics manufacturing processes where contamination risk is a critical concern of our customers.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">Chromatography </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">Our Chromatography franchise includes a number of products used in downstream purification, development, manufacturing and quality control of biological drugs. The main driver of growth in this portfolio is our OPUS<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">pre-packed</div> column product line.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Additional chromatography products include our affinity capture resins, such as CaptivA<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> Protein A resins, that are used in a small number of commercial drug processes and our ELISA test kits, used by quality control departments to detect and measure the presence of leached Protein A and/or growth factor in the final product. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">OPUS <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Pre-Packed</div> Columns </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">Our Chromatography franchise features a wide range of OPUS columns, which we deliver to our customers sealed and <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">pre-packed</div> with their choice of resin. These are <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> or <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">multiple-use</div> disposable columns that replace the use of customer-packed glass columns used in downstream purification processes. By designing OPUS columns to be a technologically advanced and flexible option for the purification of biologics from process development through clinical and commercial-scale manufacturing, Repligen has become a leader in the <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">pre-packed</div> column (&#8220;PPC&#8221;) market. Our biomanufacturing customers value the significant cost savings that OPUS columns deliver by reducing set up time, labor, equipment and facility costs &#8211; in addition to delivering product consistency and &#8220;plug and play&#8221; convenience.</div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">28 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">We launched our first production-scale OPUS columns in 2012 and have since added larger diameter options that scale up to use with 2,000 liter bioreactors. Our OPUS 80R column is the largest available PPC on the market for use in late-stage clinical or commercial purification processes. We have also introduced next-generation features such as a resin recovery port on our larger columns, which allows our customers to remove and reuse the recovered resin in other applications. We believe the OPUS <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">5-80R</div> product line is the most flexible and platformable PPC product offered in the marketplace today, and is serving the purification needs of customers manufacturing monoclonal antibodies (&#8220;mAb&#8221;) and other biologics such as vaccines and cell and gene therapies (&#8220;C&amp;GT&#8221;).</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">In addition to our larger scale OPUS columns, our portfolio includes our smaller-scale OPUS columns, including specifically RoboColumn<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div>, MiniChrom<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#8482;</div> and ValiChrom<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#8482;</div> columns for process development and validation. These columns are used in high-throughput process development screening, viral clearance validation studies and scale down validation of chromatography processes. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">We maintain customer-facing centers in both the United States and Europe for OPUS columns, and offer our customers an unmatched ability to pack any of over 100 resins in our OPUS <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">5-80R</div> range and any of over 300 resin choices in our small-scale OPUS columns.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Other Chromatography </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Our Chromatography portfolio also includes ELISA kits, which are analytical test kits to quantitate the proteins and growth factors, and chromatography resins, including our CaptivA brand. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">Filtration </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">XCell ATF<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div><div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"> </div>Cell Retention Systems </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Our Filtration products offer a number of advantages to manufacturers of biologic drugs and are used in development, clinical and commercial-scale production. Our XCell Alternating Tangential Flow (&#8220;ATF&#8221;) systems are used primarily in upstream perfusion (continuous) cell culture processing. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">XCell ATF is a cell retention technology. The system is comprised of an advanced hollow fiber (&#8220;HF&#8221;) filtration device, a low shear pump and a controller. The XCell ATF system is connected to a bioreactor and enables the cell culture to be run continuously, with cells being retained in the bioreactor, fresh nutrients (cell culture media) being fed into the reactor continuously and clarified biological product and cell waste being removed continuously. The cells are maintained in a consistent nutrient-rich environment and can reach cell densities <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">two-</div> and three-times higher than those achieved by standard <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">fed-batch</div> culture. By continuously removing waste products from the fermenter, the XCell ATF systems routinely increases cell densities to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">two-</div> or three-times the levels achieved by standard <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">fed-batch</div> culture. As a result, product yield is increased, which improves facility utilization and can reduce the size of a bioreactor required to manufacture a given volume of biologic drug product. XCell ATF systems are available in a wide range of sizes that can easily scale from laboratory use through full production with bioreactors as large as 5,000 liters.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">Through internal innovation, we developed and launched <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> formats of the original stainless steel XCell ATF devices to address increasing industry demand for <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> sterile systems with <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">&#8220;plug-and-play&#8221;</div></div> technology. The XCell ATF device is now available to customers in both its original configuration (steel housing and <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> filters) in all sizes (2, 4, 6 and 10), and/or as a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> device (disposable housing/filter combination) in most sizes (2, 6, and 10). The availability of XCell ATF technology in a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> format eliminates the time intensive workflow associated with autoclaving, leading to an 80% reduction in implementation speed. The <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> format also enables our customers to accelerate evaluations of the product with a lower initial overall cost of ownership.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">In September 2018, we entered into a collaboration agreement with industry leader Sartorius Stedim Biotech (&#8220;SSB&#8221;) to integrate our XCell ATF controller technology into SSB&#8217;s BIOSTAT<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> STR large-scale, <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> bioreactors, to create novel perfusion-enabled bioreactors.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">TangenX<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div><div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"> </div>Flat Sheet Cassettes </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">In December 2016, we acquired TangenX<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#8482;</div> Technology Corporation (&#8220;TangenX&#8221;), balancing our upstream XCell ATF systems with a portfolio of flat-sheet tangential flow filtration (&#8220;TFF&#8221;) cassettes used in downstream biologic drug concentration and formulation processes. The TangenX product portfolio includes our <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> SIUS<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#8482;</div> brand, providing customers with a high-performance, cost saving alternative to reusable TFF cassettes.</div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">29 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">TFF is a rapid and efficient method for the concentration and formulation of biomolecules that is widely used in many applications in biopharmaceutical development and manufacturing. SIUS cassettes are the only purpose built <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> TFF cassettes on the market. The cassette features a high performing membrane and unique cartridge construction that enables a lower price point. Each disposable cassette is delivered <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">pre-sanitized</div> and ready to be equilibrated and used for tangential flow, ultrafiltration and diafiltration applications. Use of SIUS TFF cassettes eliminates <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-value-added</div> steps of cleaning, testing between uses, storage and flushing required in reusable TFF products, providing cost and time savings. The cassettes are interchangeable with filter hardware from multiple manufacturers, simplifying customer trial and adoption of SIUS products.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Spectrum<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div><div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"> </div>Hollow Fibers </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">We acquired Spectrum Life Sciences LLC (&#8220;Spectrum&#8221;) and its subsidiaries in August 2017 to strengthen our filtration business with the addition of a leading portfolio of HF filtration solutions, including fully integrated KrosFlo<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> TFF Systems with Konduit sensing and ProConnex<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> Flow Path <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> assemblies. KrosFlo family of TFF systems for product concentration is fully scalable from 2 milliliters to 5,000 liters &#8211; from <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">lab-scale</div> to commercial manufacturing. Designed for purification and formulation applications, KrosFlo Systems enable robust downstream ultrafiltration and microfiltration.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">We also gained the Spectra/Por<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> portfolio of laboratory and process dialysis products and in 2019, we launched the SpectraFlo<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#8482;</div> Dynamic Dialysis Systems. Also, in 2019 we introduced the KrosFlo<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> TFDF<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#8482;</div> (Tangential Flow Depth Filtration) Systems, which we believe have the potential to disrupt and displace traditional harvest clarification operations. The KrosFlo TFDF system includes control hardware, novel high throughput tubular depth filters and ProConnex <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> TFDF flow paths. When used for cell culture clarification, <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> KrosFlo TFDF technology delivers unprecedented high flux (&gt;1,000 LMH), high capacity, low turbidity, and minimal dilution, making the technology a high-performance alternative to traditional centrifugation and depth filtration approaches to harvest clarification. TFDF technology also provides benefits such as low <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">hold-up</div> volume, high recovery, small footprint, simple set up and disposal, scalability and reduced process time.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">The Spectrum product line of HF filters and systems are used in <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">bench-top</div> through commercial-scale processes, primarily for the filtration, purification and concentration of biologics and diagnostic products. Our KrosFlo filtration systems and equipment offer both standard and customized solutions to bioprocessing customers, with particular strength in consumable and <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> offerings.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">With the acquisition of Spectrum, we substantially increased our direct sales presence in Europe and Asia, and we diversified our end markets to include all biologic classes, including mAb, vaccines, recombinant proteins and gene therapies. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Other Filtration </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">In 2018, we introduced our Konduit monitor to automate concentration and buffer exchange. We have broadened the application for Konduit monitor to include use with both HF TFF from Spectrum and our TangenX flat sheet TFF systems. We also self-manufacture HF filters that are used in our XCell ATF, KrosFlo TFF and KrosFlo TFDF systems. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">On July&#160;13, 2020, we consummated the acquisition of Engineered Molding Technology LLC (&#8220;EMT&#8221;), a New York liability company, and added EMT&#8217;s silicone-based, <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> components and manifolds to our filtration franchise. These products are key components in <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> filtration and chromatography systems and will help expand the Company&#8217;s line of <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> ProConnex flow paths, streamline our supply chain for ATF and provide more flexibility we scale and expand our <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> and systems portfolios.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="text-decoration: underline; letter-spacing: 0px; top: 0px;;display:inline;">Process Analytics </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">In May 2019, we consummated our acquisition of C Technologies, Inc. (&#8220;C Technologies&#8221;) and added a fourth franchise, Process Analytics, to our bioprocessing business. Our Process Analytics products complement and support our Filtration, Chromatography and Proteins franchises as they allow <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">end-users</div> to make <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">at-line</div> or <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">in-line</div> absorbance measurements allowing for the determination of protein concentration in filtration, chromatography formulation and fill-finish applications.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">SoloVPE<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> Device </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">Our SoloVPE Slope Spectroscopy<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> system is the industry standard for offline and <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">at-line</div> absorbance measurements for protein concentration determination in process development, manufacturing and quality control settings.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">FlowVPE<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div><div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"> </div>Device </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">Our FlowVPE Slope Spectroscopy system enhances the power of Slope Spectroscopy and provides <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">in-line</div> protein concentration measurement for filtration, chromatography and fill-finish applications. A key benefit of this <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">in-line</div> solution is the ability to monitor a manufacturing process in real time. We are developing a next-generation FlowVPE to incorporate <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">GMP-compliant</div> software for production-scale biologics manufacturing.</div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">30 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Use of VPE Slope Spectroscopy delivers multiple process benefits for our biopharmaceutical manufacturing customers, compared to traditional <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">UV-Vis</div> approaches. Key benefits include: the elimination of manual dilutions and sample transfers from process development/manufacturing to labs, rapid time to results (minutes versus hours), improved precision, <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">built-in</div> data quality for improved reporting and validation, and ease of use.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">OEM Products (Proteins) </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Our Proteins products are represented by our Protein A affinity ligands, which are a critical component of Protein A chromatography resins used in downstream purification of mAb, and cell culture growth factor products, which are a key component of cell culture media used in upstream bioprocessing to increase cell density and improve product yield. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Proteins - Ligands </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Through our Proteins business, we are a leading provider of Protein A affinity ligands and cell culture growth factors to life sciences companies. Protein A ligands are an essential &#8220;binding&#8221; component of Protein A affinity chromatography resins used in the purification of virtually all monoclonal antibody-based drugs on the market or in development. We manufacture multiple forms of Protein A ligands under long-term supply agreements with major life sciences companies including GE Healthcare (&#8220;GE&#8221;), MilliporeSigma and Purolite Life Sciences (&#8220;Purolite&#8221;), who in turn sell their Protein A chromatography resins to end users (mAb manufacturers). We have two manufacturing sites supporting overall global demand for our Protein A ligands: one in Lund, Sweden and another in Waltham, Massachusetts. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Protein A chromatography resins are considered the industry standard for purification of antibody-based therapeutics due to the ability of the Protein A ligand to very selectively bind to or &#8220;capture&#8221; antibodies from crude protein mixtures. Protein A resins are packed into the first chromatography column of typically three columns used in a mAb purification process. As a result of Protein A&#8217;s high affinity for antibodies, the mAb product is highly purified and concentrated within this first capture step before moving to polishing steps. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">In June 2018, we entered into an agreement with Navigo Proteins GmbH (&#8220;Navigo&#8221;) for the exclusive <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">co-development</div> of multiple affinity ligands for which Repligen holds commercialization rights. We are manufacturing and have agreed to supply the first of these ligands, <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">NGL-Impact</div><div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> A, exclusively to Purolite, who will pair our high-performance ligand with Purolite&#8217;s agarose jetting base bead technology used in their Jetted A50 Protein A resin product. We also signed a long-term supply agreement with Purolite for <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">NGL-Impact</div> A and potential additional affinity ligands that may advance from our Navigo collaboration. The Navigo and Purolite agreements are supportive of our strategy to secure and reinforce our Proteins franchise.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Proteins - Growth Factors </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Most biopharmaceuticals are produced through an upstream mammalian cell culture process. In order to stimulate increased cell growth and maximize overall yield from a bioreactor, manufacturers often add growth factors, such as insulin, to their cell culture media. Our cell culture growth factor additives include LONG<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div><div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"> </div>R<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">3 </div>IGF 1 (&#8220;LR3&#8221;), our insulin-like growth factor that has been shown to be up to 100 times more biologically potent than insulin (the industry standard), thereby increasing recombinant protein production in cell culture fermentation applications. LR3 is primarily sold through a distribution partnership with MilliporeSigma. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2020 Acquisitions </div></div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Proposed Acquisition of ARTeSYN Biosolutions </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On October 27, 2020, the Company entered into an Equity and Asset Purchase Agreement (&#8220;Purchase Agreement&#8221;) with ARTeSYN Biosolutions Holdings Ireland Limited, a company organized under the laws of Ireland (&#8220;ARTeSYN&#8221;), Third Creek Holdings, LLC, a Nevada limited liability company, Alphinity, LLC, a Nevada limited liability company (&#8220;Alphinity&#8221;, and together with Third Creek Holdings, LLC the &#8220;Sellers&#8221;), and Michael Gagne, solely in his capacity as the representative of the Sellers, pursuant to which the Company will acquire (i) all of the outstanding equity securities of ARTeSYN and (ii) certain assets from Alphinity related to the business of ARTeSYN (collectively, the &#8220;ARTeSYN Acquisition&#8221;) for approximately $200 million, comprised of approximately $130 million in cash to Third Creek and Alphinity and approximately $70 million in Repligen common stock to Third Creek. Subject to certain closing conditions, including the expiration and termination of the waiting period under the Hart-Scott Rodino Antitrust Improvements Act of 1976, as amended, the transaction is expected to close in the fourth quarter of 2020. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">ARTeSYN, headquartered in Waterford, Ireland, is a biosystems innovator that has had success with its single-use chromatography and filtration systems, which are considered the gold standard in downstream bioprocessing due to their performance, automation and low hold-up volumes. The proposed ARTeSYN Acquisition, combined with the recent acquisitions of EMT and Non-Metallic Solutions, Inc., further establishes Repligen as a premier player in single-use systems and associated integrated flow path assemblies. ARTeSYN has established downstream processing leadership with a suite of state of the art single-use systems for chromatography, filtration, continuous manufacturing and media/buffer prep workflows. In addition, the Company has integrated unique flow path assemblies utilizing EMT&#8217;s silicone extrusion and molding technology, to deliver highly differentiated, low hold-up volume systems that minimize product loss during processing. </div></div> <div style="font-size: 6pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 6pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-Metallic</div> Solutions, Inc. </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">On October&#160;15, 2020, the Company entered into a Stock Purchase Agreement with <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-Metallic</div> Solutions, Inc. (&#8220;NMS&#8221;), a Massachusetts corporation, and William Mallone&#233; and Derek Masser, the legal and beneficial owners of NMS, to purchase NMS, which transaction subsequently closed on October&#160;20, 2020 (the &#8220;NMS Acquisition&#8221;).</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">NMS, which is headquartered in Auburn, Massachusetts, is a manufacturer of fabricated plastics, custom containers, and related assemblies and components used in the manufacturing of biologic drugs. NMS&#8217;s products will complement and expand Repligen&#8217;s <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> product offerings.</div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">31 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Engineered Molding Technology </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On June&#160;26, 2020, we entered into a Membership Interest Purchase Agreement with EMT and Michael Pandori and Todd Etesse, the legal and beneficial owners of EMT to purchase EMT, which transaction subsequently closed on July&#160;13, 2020 (the &#8220;EMT Acquisition&#8221;). </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">EMT, which is headquartered in Clifton Park, New York, is an innovator and manufacturer of <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> silicone assemblies and components used in the manufacturing of biologic drugs. EMT&#8217;s standard and customer molding and over-molded connectors and silicone tubing products are key components in <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> filtration and chromatography systems. Its products complement and expand our <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> product offerings.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">The EMT Acquisition was accounted for as a purchase of a business under Accounting Standards Codification No. (&#8220;ASC&#8221;) 805, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Business Combinations.&#8221; </div></div>The cash paid for the EMT Acquisition was $28.5&#160;million, which will be consideration transferred under ASC 805. This includes $2.2&#160;million deposited into escrow for indemnification obligations of the sellers.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Critical Accounting Policies and Estimates </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">A &#8220;critical accounting policy&#8221; is one which is both important to the portrayal of our financial condition and results and requires management&#8217;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&#8217;s Discussion and Analysis of Financial Condition and Results of Operations and our significant accounting policies in Note 2 to the consolidated financial statements included in our Annual Report on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K</div> for the year ended December&#160;31, 2019 filed with the SEC.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Results of Operations </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Revenues </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total revenue for the three and nine months ended September&#160;30, 2020 and 2019 were as follows: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 31%;"></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 3%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three Months Ended</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Increase/(Decrease)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Increase/(Decrease)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">%&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">%&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="30" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts in thousands, except for percentage data)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Products</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">94,029</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">69,419</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">24,610</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">35.5</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">257,521</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">200,701</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">56,820</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">28.3</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Royalty and other</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">31</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">26</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">5</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">19.2</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">91</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">70</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">21</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">30.0</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">94,060</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">69,445</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">24,615</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">35.4</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">257,612</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">200,771</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">56,841</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">28.3</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Product revenues </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Since 2016, we have been increasingly focused on selling our products directly to customers in the pharmaceutical industry and to our contract manufacturers. Direct sales represented approximately 82% and 80% of our product revenue for the three months ended September&#160;30, 2020 and 2019, respectively, and represented approximately 77% and 75% of our product revenue for the nine months ended September&#160;30, 2020 and 2019, respectively. We expect that direct sales will continue to account for an increasing percentage of our product revenues, as the largest customer of our OEM products has begun to diversify its supply chain in 2020. 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. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue from our chromatography products includes the sale of our OPUS chromatography columns, chromatography resins and ELISA test kits. Revenue from our filtration products includes the sale of our XCell ATF systems and consumables, KrosFlo filtration products, SIUS filtration products and the silicone-molded products offered by EMT, which we acquired on July&#160;13, 2020. Revenue from protein products includes the sale of our Protein A ligands and cell culture growth factors. Revenue from our Process Analytics products includes the sale of our SoloVPE and FlowVPE systems and consumables. Other revenue primarily consists of revenue from the sale of our operating room products to hospitals, as well as freight revenue. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">During the three and nine months ended September&#160;30, 2020, product revenue increased by $24.6&#160;million, or 35.5%, and $56.8&#160;million, or 28.3%, as compared to the same periods of 2019. The increase is due to the continued adoption of our products by </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">32 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">our key bioprocessing customers, particularly our chromatography and filtration products. Beginning in the second quarter of 2020, we have experienced an increase in overall sales as a result of accelerated demand for our protein and filtration products. The demand was broad-based covering mAb, gene therapy and <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">COVID-19</div> customers working on vaccines and therapeutics. We expect there will be a continued increase in direct sales through the remainder of 2020, especially from <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">COVID-19</div> customers as they <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">scale-up</div> and move candidates through the clinical trial process. In addition, demand for our protein and ligands products increased during the three and nine months ended September&#160;30, 2020, as compared to the same periods of 2019. Sales of our bioprocessing products are impacted by the timing of orders, development efforts at our customers or <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">end-users</div> and regulatory approvals for biologics that incorporate our products, which may result in significant quarterly fluctuations. Such quarterly fluctuations are expected, but they may not be predictive of future revenue or otherwise indicate a trend. There was also a $14.6&#160;million increase in revenue for the nine months ended September&#160;30, 2020, as compared to the same periods of 2019 due to revenues generated by C Technologies. Since the acquisition date was in May 2019, only four months of revenue were included in the nine months ended September&#160;30, 2019.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Royalty revenues </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Royalty revenues in the three and nine months ended September&#160;30, 2020 and 2019 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 partner. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Costs of product revenue and operating expenses </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total costs and operating expenses for the three and nine months ended September&#160;30, 2020 and 2019 were comprised of the following: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 45%;"></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three Months Ended</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Increase/(Decrease)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Increase/(Decrease)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">%&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">%&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="30" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts in thousands, except for percentage data)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cost&#160;of&#160;product&#160;revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">39,626</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">31,425</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">8,201</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">26.1</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">108,471</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">88,978</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">19,493</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">21.9</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Research&#160;and&#160;development</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">4,422</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">5,427</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(1,005</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(18.5</td>
<td style="vertical-align: bottom; white-space: nowrap;">%)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">13,460</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">14,278</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(818</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(5.7</td>
<td style="vertical-align: bottom; white-space: nowrap;">%)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Selling,&#160;general&#160;and&#160;administrative</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">29,051</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">24,629</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">4,422</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">18.0</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">83,277</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">67,326</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">15,951</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">23.7</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total costs and operating expenses</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">73,099</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">61,481</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">11,618</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">18.9</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">205,208</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">170,582</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">34,626</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">20.3</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Cost of product revenue </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">Cost of product revenue increased 26.1% and 21.9% in the three and nine months ended September&#160;30, 2020, compared to the same periods of 2019, due primarily to the increase in product revenue mentioned above and costs associated with higher product volume. An increase in manufacturing headcount resulted in higher employee-related costs for the three and nine months ended September&#160;30, 2020, compared to the same periods of 2019. Additional facility costs, including personal protection equipment purchased for essential manufacturing personnel on site to protect against <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">COVID-19,</div> were also incurred during the three and nine months ended September&#160;30, 2020 for which there were no comparable amounts in 2019.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">Gross margins were 57.9% in both the three and nine months ended September&#160;30, 2020. The gross margin for the three months ended September&#160;30, 2020 includes $0.1&#160;million of amortization of inventory <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">step-up</div> associated with the EMT Acquisition. The gross margins for the three and nine months ended September&#160;30, 2019, which include $0.3&#160;million and $1.5&#160;million of amortization on inventory <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">step-up</div> associated with the C Technologies Acquisition in May 2019, were 54.7% and 55.7%, respectively. Excluding the <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">step-up</div> amortization, gross margins for the three and nine months ended September&#160;30, 2019 were 55.2% and 56.4%. The increase in gross margins, excluding the inventory <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">step-up</div> amortization, in the three and nine months ended September&#160;30, 2020, as compared to the same period of 2019, is due primarily to the increase in revenue mentioned above, and favorable product volumes and mix, partially offset by an increase in manufacturing headcount subsequent to September&#160;30, 2019. Gross margins may fluctuate in future quarters based on expected production volume and product mix.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Research and development expenses </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Research and development (&#8220;R&amp;D&#8221;) expenses are related to bioprocessing products, which include personnel, supplies and other research expenses. Due to the size of the Company and 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. </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">33 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">R&amp;D expenses decreased 18.5% and 5.7% during the three and nine months ended September&#160;30, 2020, compared to the same period of 2019. The decrease during the periods is primarily due to a decrease in R&amp;D spending on projects, as most R&amp;D personnel worked remotely for most of 2020 due to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">COVID-19.</div> This is partially offset by a $1.2&#160;million increase in R&amp;D expenses year over year, related to C Technologies operations. The nine months ended September&#160;30, 2020 only had four months of expenses since the acquisition was consummated on May&#160;31, 2019.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">We expect our R&amp;D expenses for the remainder of 2020 to gradually increase to support new product development. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Selling, general and administrative expenses </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Selling, general and administrative (&#8220;SG&amp;A&#8221;) 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. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">During the three and nine months ended September&#160;30, 2020, SG&amp;A costs increased by $4.4&#160;million, or 18.0%, and $16.0&#160;million, or 23.7%, as compared to the same periods of 2019. The increase is partially due to the continued expansion of our customer-facing activities to drive sales of our bioprocessing products, and the continued buildout of our administrative infrastructure, primarily through increased headcount, to support expected future growth. Stock-based compensation expense and other employee-related costs increased during the three and nine months ended September&#160;30, 2020, as compared to the same period in 2019, resulting from an increase in headcount and higher share prices period over period. In addition, $5.9&#160;million of the increase in SG&amp;A costs for the nine months ended September&#160;30, 2020, was related to the C Technologies operations, which was acquired in May 2019. C Technologies&#8217; SG&amp;A costs for the nine months ended September&#160;30, 2020 include nine months of costs, compared to only four months in the same period of 2019. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Other expenses, net </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The table below provides detail regarding our other expenses, net: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 46%;"></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three Months<br/>Ended</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Increase/(Decrease)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Increase/(Decrease)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">%&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">%&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="30" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts in thousands, except for percentage data)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Investment income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">82</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">1,898</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(1,816</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(95.7</td>
<td style="vertical-align: bottom; white-space: nowrap;">%)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">1,699</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">3,616</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(1,917</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(53.0</td>
<td style="vertical-align: bottom; white-space: nowrap;">%)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Loss on extinguishment of debt</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(5,650</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">5,650</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(100.0</td>
<td style="vertical-align: bottom; white-space: nowrap;">%)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(5,650</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">5,650</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(100.0</td>
<td style="vertical-align: bottom; white-space: nowrap;">%)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Interest expense</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(3,052</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(2,857</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(195</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6.8</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(9,032</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(6,326</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(2,706</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">42.8</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other expenses</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(248</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">316</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(564</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(178.5</td>
<td style="vertical-align: bottom; white-space: nowrap;">%)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(632</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(23</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(609</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2647.8</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total other expense, net</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(3,218</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(6,293</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">3,075</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(48.9</td>
<td style="vertical-align: bottom; white-space: nowrap;">%)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(7,965</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(8,383</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">418</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(5.0</td>
<td style="vertical-align: bottom; white-space: nowrap;">%)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Investment income </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">Investment income includes income earned on invested cash balances. The decrease of $1.8&#160;million and $1.9&#160;million for the three and nine months ended September&#160;30, 2020, as compared to the same periods of 2019, was attributable to a decrease in interest rates on our average invested cash balances. In March 2020, in response to the outbreak of <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">COVID-19</div> and to stay ahead of disruptions and economic slowdown, the Federal Reserve reduced federal funds rate to a range of 0.0% to 0.25%, which will continue to affect our investment income in future periods. Higher average invested cash balances during the three and nine months ended September&#160;30, 2020, as compared to the same periods of 2019 due to the completion of a public offering and the issuance of our 2019 Notes during the third quarter of 2019, partially offset the decrease in interest rates mentioned above. We expect investment income to vary based on changes in the amount of funds invested and fluctuation of interest rates.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Loss on extinguishment of debt </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The $5.6&#160;million loss on extinguishment of debt in the three and nine months ended September&#160;30, 2019, resulted from the settlement of our outstanding 2.125% Convertible Senior Notes due 2021 (the &#8220;2016 Notes&#8221;). The loss represents the difference between (i)&#160;the fair value of the liability component and (ii)&#160;the sum of the carrying value of the debt component and any unamortized debt issuance costs at the time of settlement. </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">34 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Interest expense </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Interest expense in the three and nine months ended September&#160;30, 2020 is from our 0.375% Convertible Senior Notes due 2024 (the &#8220;2019 Notes&#8221;), which were issued in July 2019. Interest expense in the three and nine months ended September&#160;30, 2019 is from our 2016 Notes, which were settled during the third quarter of 2019. Interest expense increased $0.2&#160;million and $2.7&#160;million for the three and nine months ended September&#160;30, 2020, as compared to the same periods in 2019. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The amortization of debt issuance costs on the 2019 Notes was $2.8&#160;million and $8.2&#160;million for the three and nine months ended September&#160;30, 2020. Amortization of debt issuance costs on the 2019 Notes was $2.1&#160;million for both the three and nine months ended September&#160;30, 2019. The amortization of the debt issuance costs on the 2016 Notes was $0.6&#160;million and $2.8&#160;million for the three and nine months ended September&#160;30, 2019, respectively. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Contractual coupon interest incurred on the 2019 Notes for the three and nine months ended September&#160;30, 2020 was $0.3&#160;million and $0.8&#160;million, respectively. Interest calculated based on the carrying value related to the 2019 Notes for both the three and nine months ended September&#160;30, 2019 was $0.2&#160;million. Contractual coupon interest incurred on the 2016 Notes was $0.1&#160;million and $1.3&#160;million in the three and nine months ended September&#160;30, 2019. Since the 2016 Notes were settled during July 2019, interest no longer accrued on the 2016 Notes subsequent to their settlement. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Other expenses </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">The change in other expenses during the three and nine months ended September&#160;30, 2020, compared to the same period of 2019, is primarily attributable to foreign currency losses related to amounts due from <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-Swedish</div> krona-based customers and vendors.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Income tax provision </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Income tax provision for the three and nine months ended September&#160;30, 2020 and 2019 was as follows: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 56%;"></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 2%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three Months<br/>Ended</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Increase/(Decrease)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months<br/>Ended</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Increase/(Decrease)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">%&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">%&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="30" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts in thousands, except for percentage data)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Income tax provision</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">3,191</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">12</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">3,179</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">26491.7</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">4,211</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">3,999</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">212</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">5.3</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Effective tax rate</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">18.0</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.7</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">9.5</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">18.3</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">For the three and nine months ended September&#160;30, 2020, we recorded an income tax expense of $3.2&#160;million and $4.2&#160;million, respectively. The effective tax rate was 18.0% and 9.5% for the three and nine months ended September&#160;30, 2020 and is based upon the estimated income for the year ending December&#160;31, 2020 and the composition of income in different jurisdictions and impacts of various discrete tax adjustments. The effective tax rate for the three and nine months ended September&#160;30, 2020 was lower than the U.S. statutory rate of 21% primarily due to windfall benefits on stock option exercises and the vesting of stock units. We recorded a tax provision of less than $0.1&#160;million and $4.0&#160;million, respectively for the three and nine months ended September&#160;30, 2019. The effective tax rate was 0.7% and 18.3% for the three and nine months ended September&#160;30, 2019 and the composition of income in different jurisdictions and the impacts of various discrete tax adjustments. The effective tax rate for the three and nine months ended September&#160;30, 2019 was lower than the U.S. statutory rate of 21% primarily due to windfall benefits on stock option exercise and the vesting of stock units. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-GAAP</div> Financial Measures </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">We provide <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-GAAP</div> 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 <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-GAAP</div> financial measure to its most comparable GAAP financial measure is provided below.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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. We excluded the impact of certain acquisition-related items because we believe that the resulting charges do not accurately reflect the performance of our ongoing operations for the period in which such charges are incurred. </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">35 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-GAAP</div> adjusted income from operations </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-GAAP</div> adjusted income from operations is measured by taking income from operations as reported in accordance with GAAP and excluding acquisition and integration costs, intangible amortization and inventory <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">step-up</div> charges booked through our consolidated statements of comprehensive income (loss). The following is a reconciliation of income from operations in accordance with GAAP to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-GAAP</div> adjusted income from operations for the three and nine months ended September&#160;30, 2020 and 2019:</div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 76%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three Months Ended</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts in thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">GAAP income from operations</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">20,961</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">7,964</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">52,404</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">30,189</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-GAAP</div> adjustments to income from operations:</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Acquisition and integration costs</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,849</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,953</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6,536</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">9,573</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible amortization</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,925</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,900</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">11,677</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">9,562</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;">Inventory <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">step-up</div> charges</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">144</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">314</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">144</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,483</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-GAAP</div> adjusted income from operations</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">26,879</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">15,131</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">70,761</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">50,807</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-GAAP</div> adjusted net income </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-GAAP</div> adjusted net income is measured by taking net income as reported in accordance with GAAP and excluding acquisition and integration costs, intangible amortization, inventory <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">step-up</div> charges, loss on extinguishment of debt, <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-cash</div> interest expense and the tax effects of these items. The following are reconciliations of net income in accordance with GAAP to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-GAAP</div> adjusted net income for the three and nine months ended September&#160;30, 2020 and 2019:</div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 76%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three Months Ended September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amount</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fully<br/>Diluted</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Earnings<br/>per</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Share</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amount</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fully<br/>Diluted</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Earnings<br/>per</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Share</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts in thousands, except per share<br/>data)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">GAAP net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">14,552</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.27</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">1,659</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.03</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-GAAP</div> adjustments to net income:</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Acquisition and integration costs</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,849</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.03</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,953</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.06</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible amortization</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,925</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.07</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,900</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.08</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Loss on extinguishment of debt</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">5,650</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.11</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;">Inventory <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">step-up</div> charges</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">144</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.00</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">314</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.01</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-cash</div> interest expense</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,759</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.05</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,631</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.05</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Tax effect of intangible amortization and acquisition costs</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(2,072</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(0.04</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(3,781</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(0.07</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-GAAP</div> adjusted net income</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">21,157</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.40</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">13,326</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.26</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">36 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;">
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 76%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amount</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fully<br/>Diluted</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Earnings<br/>per</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Share</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amount</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fully<br/>Diluted</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Earnings<br/>per</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Share</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts in thousands, except per share<br/>data)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">GAAP net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">40,228</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.75</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">17,807</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.37</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-GAAP</div> adjustments to net income:</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Acquisition and integration costs</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6,536</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.12</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">10,074</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.21</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible amortization</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">11,677</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.22</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">9,562</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.20</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;">Inventory <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">step-up</div> charges</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">144</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.00</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,483</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.03</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Loss on extinguishment of debt</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">5,650</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.12</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-cash</div> interest expense</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8,174</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.15</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">4,863</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">0.10</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Tax effect of intangible amortization and acquisition costs</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(6,334</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(0.12</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(7,742</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(0.16</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-GAAP</div> adjusted net income</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">60,425</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">1.13</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">41,697</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.87</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">* Per share totals may not add due to rounding. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Adjusted EBITDA </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">Adjusted EBITDA is measured by taking net income as reported in accordance with GAAP, excluding investment income, interest expense, taxes, depreciation and amortization, acquisition and integration costs, inventory <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">step-up</div> charges and loss on extinguishment of debt booked through our consolidated statements of comprehensive income (loss). The following is a reconciliation of net income in accordance with GAAP to adjusted EBITDA for the three and nine months ended September&#160;30, 2020 and 2019:</div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 72%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three Months Ended</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts in thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">GAAP net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">14,552</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">1,659</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">40,228</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">17,807</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-GAAP</div> EBITDA adjustments to net income:</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Investment income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(82</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(1,898</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(1,699</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(3,616</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Interest expense</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,052</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,857</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">9,032</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6,326</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Tax provision</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,191</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">12</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">4,211</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,999</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Depreciation</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,757</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,810</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">7,820</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">5,147</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Amortization</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,953</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,928</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">11,760</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">9,644</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">EBITDA</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">27,423</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8,368</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">71,352</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">39,307</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;">Other <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-GAAP</div> adjustments:</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Acquisition and integration costs</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,849</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,953</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6,536</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">10,074</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Loss on extinguishment of debt</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">5,650</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">5,650</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2em; line-height: normal;">Inventory <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">step-up</div> charges</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">144</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">314</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">144</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,483</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Adjusted EBITDA</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">29,416</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">17,285</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">78,032</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">56,514</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Liquidity and Capital Resources </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">We have financed our operations primarily through revenues derived from product sales, the issuance of the 2016 Notes in May 2016 and our 2019 Notes (defined below) in July 2019 and the issuance of common stock in our July 2019, May 2019 and July 2017 public offerings. Our revenue for the foreseeable future will primarily be limited to our bioprocessing product revenue. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">At September&#160;30, 2020, we had cash and cash equivalents (excluding restricted cash) of $553.3&#160;million compared to cash and cash equivalents (excluding restricted cash) of $528.4&#160;million at December&#160;31, 2019. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">On July&#160;19, 2019, the Company issued $287.5&#160;million aggregate principal amount of 0.375% Convertible Senior Notes due 2024 (&#8220;2019 Notes&#8221;), which included the underwriters&#8217; exercise in full of an option to purchase an additional $37.5&#160;million aggregate principal amount of 2019 Notes (the &#8220;Notes Offering&#8221; and, together with the Stock Offering in July 2019 as mentioned in Note 9, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Stockholders&#8217; Equity&#8221;</div></div> included in this report, the &#8220;Offerings&#8221;). The net proceeds of the Notes Offering, after deducting underwriting discounts and commissions and other offering expenses payable by the Company, were $278.5&#160;million. See Note 8,</div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">37 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Convertible Senior Notes,&#8221; </div></div>included in this report<div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"> </div></div>for more information on this transaction. The Company utilized a portion of the proceeds from the Offerings to settle its outstanding 2016 Notes during the third quarter of 2019. On July&#160;16, 2019, the Company entered into separate privately negotiated agreements with certain holders of the 2016 Notes to exchange an aggregate of $92.0&#160;million principal aggregate amount of the 2016 Notes for shares of the Company&#8217;s common stock, together with cash, in private placement transactions (the &#8220;Note Exchanges&#8221;). On July&#160;19, 2019 and July&#160;22, 2019, the Company used approximately $92.3&#160;million (including $0.3&#160;million of accrued interest) and 1,850,155 shares of its common stock valued at $161.0&#160;million to settle the Note Exchanges for total consideration of $253.3&#160;million, of which $163.6&#160;million was allocated to the equity component of the 2016 Notes. The Company allocated the consideration transferred to the liability and equity components using the same proportions as the initial carrying value of the 2016 Notes.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">During the third quarter of 2020, the closing price of the Company&#8217;s common stock did not exceed 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. Therefore, the 2019 Notes are not convertible at the option of the holders of the 2019 Notes during the fourth quarter of 2020 per the First Supplemental Indenture underlying the 2019 Notes. The 2019 Notes have a face value of $287.5&#160;million and a carrying value of $240.9&#160;million and are classified as long-term liabilities on the Company&#8217;s consolidated balance sheet as of September&#160;30, 2020. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">We intend to use the remaining net proceeds from the Offerings for working capital and other general corporate purposes, including to fund possible acquisitions of, or investments in, complementary businesses, products, services and technologies, such as the acquisitions mentioned in Note 16, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Subsequent Events,&#8221; </div></div>included in this report. It is the Company&#8217;s policy and intent to settle the face value of the 2019 Notes in cash and any excess conversion premium in shares of our common stock.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Cash flows </div></div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 63%;"></td>
<td style="width: 6%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td>
<td style="width: 5%; vertical-align: bottom;"></td>
<td></td>
<td></td>
<td></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended</div></div><br/><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.5pt;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Increase/(Decrease)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$&#160;Change</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="10" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts in thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating activities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">47,754</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">49,542</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(1,788</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Investing activities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(43,097</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(198,197</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">155,100</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Financing activities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">7,078</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">485,047</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(477,969</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Effect of exchange rate changes on cash, cash equivalents and restricted cash</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">4,160</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(7,785</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">11,945</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net increase in cash, cash equivalents and restricted cash</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">15,895</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">328,607</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(312,712</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Operating activities </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">For the nine months ended September&#160;30, 2020, our operating activities provided cash of $47.8&#160;million reflecting net income of $40.2&#160;million and <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-cash</div> charges totaling $40.5&#160;million primarily related to depreciation, amortization, deferred income taxes, <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-cash</div> interest expense and stock-based compensation charges. An increase in accounts receivable consumed $11.5&#160;million of cash and was primarily driven by the 35.4% <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">year-to-date</div></div> increase in revenues. An increase in inventory manufactured of $22.8&#160;million supports expected increases in future revenue. An increase in accounts payable and accrued liabilities of $1.1&#160;million was primarily due to increased inventory purchases to support customer orders, offset by payment of acquisition-related bonuses for C Technologies during the second quarter of 2020. The remaining cash provided by operating activities resulted from favorable changes in various other working capital accounts.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">For the nine months ended September&#160;30, 2019, our operating activities provided cash of $49.5&#160;million reflecting net income of $17.8&#160;million <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">and&#160;non-cash&#160;charges</div> totaling $25.2&#160;million primarily related to depreciation, <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">amortization,&#160;non-cash&#160;interest</div> expense, deferred taxes, loss on extinguishment of debt and stock-based compensation charges. An increase in accounts receivable consumed $6.7&#160;million of cash and was primarily driven by the 41.3% <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">year-to-date</div></div> increase in revenues. An increase in inventory consumed $4.9&#160;million to support future revenue, due to the addition of C Technologies on May&#160;31, 2019. These movements were offset by an increase in accounts payable and accrued liabilities of $6.5&#160;million due to the addition of C Technologies as well as a decrease in unbilled receivables of $2.0&#160;million. The remaining cash provided by operating activities resulted from favorable changes in various other working capital accounts.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Investing activities </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Our investing activities consumed $43.1&#160;million of cash during the nine months ended September&#160;30, 2020 related to the EMT Acquisition on July&#160;13, 2020, as well as ongoing capital expenditures. Our investing activities consumed $198.2&#160;million in the nine months ended September&#160;30, 2019 related to the purchase of C Technologies, and capital expenditures. We consumed $28.5&#160;million in cash (net of cash received) for the EMT Acquisition on July&#160;13, 2020 and $182.2&#160;million in cash (net of cash received) for the C Technologies Acquisition on May&#160;31, 2019. </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">38 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;">Capital expenditures in 2020 and 2019 included $3.6&#160;million and $4.6&#160;million, respectively, for capitalized costs related to our <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">internal-use</div> software.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Financing activities </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash provided by financing activities of $7.1&#160;million for the nine months ended September&#160;30, 2020 included proceeds from stock option exercises and the vesting of stock units during the period. Cash provided by financing activities of $485.0&#160;million for the nine months ended September&#160;30, 2019 included $320.7&#160;million from the issuance of our common stock resulting from our public offerings completed in May and June 2019. In addition, in July 2019 we issued $287.5&#160;million aggregate principal amount of the 2019 Notes for net proceeds of $278.6&#160;million. Proceeds from stock option exercises during the nine months ended September&#160;30, 2019 were $1.1&#160;million. Offsetting these movements was $115.0&#160;million of cash utilized by us in July 2019 to settle the 2016 Notes. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Working capital increased by approximately $52.2&#160;million to $645.7&#160;million at September&#160;30, 2020 from $593.5&#160;million at December&#160;31, 2019 due to the various changes noted above. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Our future capital requirements will depend on many factors, including the following: </div></div> <div style="font-size: 6pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 6pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 1%;">&#160;</td>
<td style="width: 2%; vertical-align: top;;text-align:left;">&#8226;</td>
<td style="width: 1%; vertical-align: top; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">the expansion of our bioprocessing business; </div></div> </td> </tr> </table> <div style="font-size: 6pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 6pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 1%;">&#160;</td>
<td style="width: 2%; vertical-align: top;;text-align:left;">&#8226;</td>
<td style="width: 1%; vertical-align: top; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">the ability to sustain sales and profits of our bioprocessing products; </div></div> </td> </tr> </table> <div style="font-size: 6pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 6pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 1%;">&#160;</td>
<td style="width: 2%; vertical-align: top;;text-align:left;">&#8226;</td>
<td style="width: 1%; vertical-align: top; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">our ability to acquire additional bioprocessing products; </div></div> </td> </tr> </table> <div style="font-size: 6pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 6pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 1%;">&#160;</td>
<td style="width: 2%; vertical-align: top;;text-align:left;">&#8226;</td>
<td style="width: 1%; vertical-align: top; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">our identification and execution of strategic acquisitions or business combinations; </div></div> </td> </tr> </table> <div style="font-size: 6pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 6pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 1%;">&#160;</td>
<td style="width: 2%; vertical-align: top;;text-align:left;">&#8226;</td>
<td style="width: 1%; vertical-align: top; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">the scope of and progress made in our R&amp;D activities; </div></div> </td> </tr> </table> <div style="font-size: 6pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 6pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 1%;">&#160;</td>
<td style="width: 2%; vertical-align: top;;text-align:left;">&#8226;</td>
<td style="width: 1%; vertical-align: top; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">the extent of any share repurchase activity; and </div></div> </td> </tr> </table> <div style="font-size: 6pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 6pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 1%;">&#160;</td>
<td style="width: 2%; vertical-align: top;;text-align:left;">&#8226;</td>
<td style="width: 1%; vertical-align: top; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">the success of any proposed financing efforts. </div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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 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. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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 licensing or acquiring complementary 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 stockholders, 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. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Off-Balance</div> Sheet Arrangements </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">We do not have any special purpose entities or <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">off-balance</div> sheet financing arrangements as of September&#160;30, 2020.</div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">39 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Net Operating Loss Carryforwards </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">At December&#160;31, 2019, we had net operating loss carryforwards of $0.2&#160;million remaining. We had business tax credits carryforwards of $2.1&#160;million available to reduce future federal income taxes, if any. The business tax credits carryforwards will continue to expire at various dates through December 2039. Net operating loss carryforwards and available tax credits are subject to review and possible adjustment by the Internal Revenue Service, state and foreign jurisdictions and may be limited in the event of certain changes in the ownership interest of significant stockholders. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Effects of Inflation </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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 and fixtures 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. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Cautionary Statement Regarding Forward-Looking Statements </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">This Quarterly Report on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-Q</div> contains forward-looking statements which are made pursuant to the safe harbor provisions of Section&#160;27A of the Securities Act of 1933, as amended, and Section&#160;21E of the Securities Exchange Act of 1934, as amended (the &#8220;Exchange Act&#8221;). The forward-looking statements in this Quarterly Report on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-Q</div> do not constitute guarantees of future performance. Investors are cautioned that statements in this Quarterly Report on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-Q</div> 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&#8217;s strategy, plans and objectives for future operations or acquisitions, product development and sales, 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 impact of, and response to, the <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">COVID-19</div> coronavirus pandemic and the related downturn of the U.S. and global economies 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&#8217;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 oral statements that constitute forward-looking statements may be made by the Company or on the Company&#8217;s behalf. Words such as &#8220;expect,&#8221; &#8220;seek,&#8221; &#8220;anticipate,&#8221; &#8220;intend,&#8221; &#8220;plan,&#8221; &#8220;believe,&#8221; &#8220;could,&#8221; &#8220;estimate,&#8221; &#8220;may,&#8221; &#8220;target,&#8221; &#8220;project,&#8221; 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 ultimate impact of the coronavirus pandemic on our business or financial results; the success of current and future collaborative or supply relationships, including our agreements with Cytiva (formerly GE Healthcare), MilliporeSigma and Purolite; 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 limited manufacturing capabilities and our dependence on third-party manufacturers and value-added resellers; the effect of the pandemic of the novel coronavirus disease, including mitigation efforts and economic effects, on our business operations and the operations of our customers and suppliers; 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 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 Securities and Exchange Commission including under the sections entitled &#8220;Risk Factors&#8221; in our Annual Report on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K</div> for the year ended December&#160;31, 2019 and our Quarterly Report on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-Q</div> for the quarter ended March&#160;31, 2020.</div> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td id="tx945763_9" style="width: 10%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">ITEM&#160;3.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Interest Rate Risk</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"> </div></div><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"> </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">We have historically held investments in commercial paper, U.S. Government and agency 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. We do not have any such investments as of September&#160;30, 2020. As a result, a hypothetical 100 basis point increase in interest rates would have no effect on our cash position as of September&#160;30, 2020. </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">40 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">We generally place our marketable security investments in high quality credit instruments, as specified in our investment policy guidelines. We believe that the conservative nature of our investments mitigates our interest rate exposure, and our investment policy limits the amount of our credit exposure to any one issue, issuer (with the exception of U.S. agency obligations) and type of instrument. We do not expect any material losses from our marketable security investments and therefore believe that our potential interest rate exposure is limited. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Foreign Exchange Risk</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;"> </div></div><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"> </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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 British pound. 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. </div></div> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td id="tx945763_10" style="width: 10%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">ITEM&#160;4.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">CONTROLS AND PROCEDURES </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Disclosure Controls and Procedures </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">The Company&#8217;s management, with the participation of the principal executive officer and the principal financial officer, has evaluated the effectiveness of the Company&#8217;s disclosure controls and procedures (as defined in Rules <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">13a-15(e)</div> or <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">15d-15(e)</div> 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&#8217;s disclosure controls and procedures were effective at the reasonable assurance level.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Changes in Internal Control </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">We acquired Engineered Molding Technology LLC (&#8220;EMT&#8221;) on July&#160;13, 2020. The financial results of EMT are included in our unaudited consolidated financial statements as of September&#160;30, 2020 and for the quarter then ended.&#160;As this acquisition occurred in the third quarter of 2020, the scope of our assessment of our internal control over financial reporting does not include EMT. This exclusion is in accordance with the Securities and Exchange Commission&#8217;s general guidance that an assessment of a recently acquired business may be omitted from our scope in the year of acquisition. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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 (&#8220;ERP&#8221;) system. The ERP system is being implemented in phases through 2021. The second phase was completed during the third quarter of 2020. 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 system as of September&#160;30, 2020. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;">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)&#160;of Securities Exchange Act Rule <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">13a-15</div> or Rule <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">15d-15</div> that occurred in the three months ended September&#160;30, 2020 that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.</div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">41 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div id="tx945763_11" style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">PART II. OTHER INFORMATION </div></div></div> <div style="font-size: 6pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 6pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td id="tx945763_12" style="width: 9%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">ITEM&#160;1.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">LEGAL PROCEEDINGS </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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. </div></div> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td id="tx945763_13" style="width: 11%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">ITEM&#160;1A.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">RISK FACTORS </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;">The matters discussed in this Quarterly Report on <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Form&#160;10-Q&#160;include</div> 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 <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Risk Factors&#8221;</div></div> in Part I, Item&#160;1A of our Annual Report on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K</div> for the period ended December&#160;31, 2019 and in subsequent filings,&#160;could cause our actual results to differ materially from those in the forward-looking statements. There are no material changes to the risk factors described in our Annual Report on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K</div> for the period ended December&#160;31, 2019 and our Quarterly Report on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-Q</div> for the quarter ended March&#160;31, 2020.</div> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td id="tx945763_14" style="width: 10%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">ITEM&#160;2.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">None. </div></div> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td id="tx945763_15" style="width: 10%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">ITEM&#160;3.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">DEFAULTS UPON SENIOR SECURITIES </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">None. </div></div> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td id="tx945763_16" style="width: 10%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">ITEM&#160;4.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">MINE SAFETY DISCLOSURES </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Not applicable. </div></div> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td id="tx945763_17" style="width: 10%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">ITEM&#160;5.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">OTHER INFORMATION </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">None. </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">42 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td id="tx945763_18" style="width: 10%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">ITEM&#160;6.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">EXHIBITS </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">(a) Exhibits </div></div></div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="font-family: 'Times New Roman';"></td>
<td style="width: 3%; vertical-align: bottom; font-family: 'Times New Roman';"></td>
<td style="width: 89%; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; white-space: nowrap;;text-align:center;"> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Exhibit</div></div></div> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 1pt; border-bottom: 1pt solid rgb(0, 0, 0); display: inline-block; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Number</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:center;"> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: inline-block; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Document Description</div></div></div> </td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; white-space: nowrap;">&#160;&#160;&#160;&#160;3.1</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: top;"><a href="http://www.sec.gov/Archives/edgar/data/730272/000091205799005920/0000912057-99-005920.txt">Restated Certificate of Incorporation, dated September&#160;30, 1992 and amended September&#160;17, 1999 (filed as Exhibit 3.1 to Repligen Corporation&#8217;s Quarterly Report on Form <span style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-Q</span> for the quarter ended September&#160;30, 1999 and incorporated herein by reference).</a></td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; white-space: nowrap;">&#160;&#160;&#160;&#160;3.2</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: top;"><a href="http://www.sec.gov/Archives/edgar/data/730272/000119312514203828/d730087dex31.htm">Certificate of Amendment to the Certificate of Incorporation of Repligen Corporation, effective as of May&#160;16, 2014 (filed as Exhibit 3.1 to Repligen Corporation&#8217;s Current Report on Form <span style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">8-K</span> filed on May&#160;19, 2014 and incorporated herein by reference).</a></td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; white-space: nowrap;">&#160;&#160;&#160;&#160;3.3</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: top;"><a href="http://www.sec.gov/Archives/edgar/data/730272/000119312517179814/d363890dex31.htm">Second Amended and Restated Bylaws (filed as Exhibit 3.1 to Repligen Corporation&#8217;s Current Report on Form <span style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">8-K</span> filed on May&#160;23, 2017 and incorporated herein by reference)</a>.</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; white-space: nowrap;">&#160;&#160;31.1&#160;+</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: top;"><a href="d945763dex311.htm">Rule <span style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><span style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">13a-14(a)/15d-14(a)</span></span> Certification. </a></td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; white-space: nowrap;">&#160;&#160;31.2&#160;+</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: top;"><a href="d945763dex312.htm">Rule <span style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><span style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">13a-14(a)/15d-14(a)</span></span> Certification.</a></td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; white-space: nowrap;">&#160;&#160;32.1*</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: top;"><a href="d945763dex321.htm">Certification pursuant to 18 U.S.C. Section&#160;1350, as adopted pursuant to Section&#160;906 of the Sarbanes-Oxley Act of 2002.</a></td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; white-space: nowrap;">101.INS+</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: top;">XBRL Instance Document &#8211; the instance document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document.</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; white-space: nowrap;">101.SCH+</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: top;">Inline XBRL Taxonomy Extension Schema Document.</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; white-space: nowrap;">101.CAL+</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: top;">Inline XBRL Taxonomy Extension Calculation Linkbase Document.</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; white-space: nowrap;">101.DEF+</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: top;">Inline XBRL Taxonomy Extension Definition Linkbase Document.</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; white-space: nowrap;">101.LAB+</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: top;">Inline XBRL Taxonomy Extension Label Linkbase Document.</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; white-space: nowrap;">101.PRE+</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: top;">Inline XBRL Taxonomy Extension Presentation Linkbase Document.</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 6pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 6pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; white-space: nowrap;">104+</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: top;">Cover Page Interactive Data File (formatted as Inline XBRL with applicable taxonomy extension information contained in Exhibits 101.*).</td> </tr> </table> <div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 2%; vertical-align: top;;text-align:left;">#</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Management contract or compensatory plan or arrangement. </div></div> </td> </tr> </table> <div style="font-size: 6pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 6pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 2%; vertical-align: top;;text-align:left;">+</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Filed herewith. </div></div> </td> </tr> </table> <div style="font-size: 6pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 6pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 2%; vertical-align: top;;text-align:left;">*</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Furnished herewith.</div></div> </td> </tr> </table> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">43 </div></div> </div> </div> <div style="margin-top: 1em; margin-bottom: 0em; page-break-before: always;"></div> <hr style="width: 100%; height: 3px; color: rgb(153, 153, 153);"/> <div style="font-size: 13.28px; margin-top: 1.67em; margin-bottom: 1.67em;;font-weight: bold;"><a href="#toc">Table of Contents</a></div> <div style="text-align: center;"> <div style="width: 8.5in; text-align: left; margin-right: auto; margin-left: auto;"> <div id="tx945763_19" style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">SIGNATURES </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 12pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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. </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 47%;"></td>
<td style="width: 1%; vertical-align: bottom;"></td>
<td style="width: 4%;"></td>
<td style="vertical-align: bottom;"></td>
<td style="width: 47%;"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; font-family: &quot;Times New Roman&quot;;"></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="3" style="vertical-align: top;">REPLIGEN CORPORATION</td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 12pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 12pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 12pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;">Date: November&#160;5, 2020</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;">By:</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 1pt; border-bottom: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">/<small style="display:inline;;font-size:11.1px">S</small>/ T<small style="display:inline;;font-size:11.1px">ONY</small> J. H<small style="display:inline;;font-size:11.1px">UNT</small></div></div> </td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Tony J. Hunt</div></div></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">President and Chief Executive Officer</div></div></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Principal executive officer)</div></div></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Repligen Corporation</div></div></td> </tr>
<tr style="font-size: 1pt;">
<td style="height: 12pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 12pt; font-family: 'Times New Roman';"></td>
<td colspan="2" style="height: 12pt; font-family: 'Times New Roman';"></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;">Date: November&#160;5, 2020</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;">By:</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;"> <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 1pt; border-bottom: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">/<small style="display:inline;;font-size:11.1px">S</small>/ J<small style="display:inline;;font-size:11.1px">ON</small> S<small style="display:inline;;font-size:11.1px">NODGRES</small></div></div> </td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Jon Snodgres</div></div></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Chief Financial Officer</div></div></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Principal financial officer)</div></div></td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top; font-family: 'Times New Roman';"></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: top;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Repligen Corporation</div></div></td> </tr> </table> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">44 </div></div> </div> </div>
</body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>2
<FILENAME>d945763dex311.htm
<DESCRIPTION>EX-31.1
<TEXT>
<HTML><HEAD>
<TITLE>EX-31.1</TITLE>
</HEAD>
 <BODY BGCOLOR="WHITE">


<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right"><B>Exhibit 31.1 </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>CERTIFICATION OF PRINCIPAL EXECUTIVE OFFICER PURSUANT TO RULE <FONT STYLE="white-space:nowrap">13a-14(a)</FONT> / RULE <FONT
STYLE="white-space:nowrap">15d-14(a)</FONT> OF THE SECURITIES EXCHANGE ACT OF 1934, AS AMENDED </B></P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">I, Tony J. Hunt, certify that: </P>
<P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%" VALIGN="top" ALIGN="left">1.</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">I have reviewed this Quarterly Report on Form <FONT STYLE="white-space:nowrap">10-Q</FONT> of Repligen
Corporation; </P></TD></TR></TABLE> <P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%" VALIGN="top" ALIGN="left">2.</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a
material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report; </P></TD></TR></TABLE>
<P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%" VALIGN="top" ALIGN="left">3.</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">Based on my knowledge, the financial statements, and other financial information included in this report,
fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report; </P></TD></TR></TABLE>
<P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%" VALIGN="top" ALIGN="left">4.</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">The registrant&#146;s other certifying officer(s) and I are responsible for establishing and maintaining
disclosure controls and procedures (as defined in Exchange Act Rules <FONT STYLE="white-space:nowrap">13a-15(e)</FONT> and <FONT STYLE="white-space:nowrap">15d-15(e))</FONT> and internal control over financial reporting (as defined in Exchange Act
Rules <FONT STYLE="white-space:nowrap">13a-15(f)</FONT> and <FONT STYLE="white-space:nowrap">15d-15(f))</FONT> for the registrant and have: </P></TD></TR></TABLE> <P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="9%">&nbsp;</TD>
<TD WIDTH="4%" VALIGN="top" ALIGN="left">(a)</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be
designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is
being prepared; </P></TD></TR></TABLE> <P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="9%">&nbsp;</TD>
<TD WIDTH="4%" VALIGN="top" ALIGN="left">(b)</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">Designed such internal control over financial reporting, or caused such internal control over financial
reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting
principles; </P></TD></TR></TABLE> <P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="9%">&nbsp;</TD>
<TD WIDTH="4%" VALIGN="top" ALIGN="left">(c)</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">Evaluated the effectiveness of the registrant&#146;s disclosure controls and procedures and presented in this
report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and </P></TD></TR></TABLE>
<P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="9%">&nbsp;</TD>
<TD WIDTH="4%" VALIGN="top" ALIGN="left">(d)</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">Disclosed in this report any change in the registrant&#146;s internal control over financial reporting that
occurred during the registrant&#146;s most recent fiscal quarter (the registrant&#146;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#146;s internal
control over financial reporting; and </P></TD></TR></TABLE> <P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%" VALIGN="top" ALIGN="left">5.</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">The registrant&#146;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of
internal control over financial reporting, to the registrant&#146;s auditors and the audit committee of the registrant&#146;s board of directors (or persons performing the equivalent functions): </P></TD></TR></TABLE>
<P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="9%">&nbsp;</TD>
<TD WIDTH="4%" VALIGN="top" ALIGN="left">(a)</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">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&#146;s ability to record, process, summarize and report financial information; and </P></TD></TR></TABLE>
<P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="9%">&nbsp;</TD>
<TD WIDTH="4%" VALIGN="top" ALIGN="left">(b)</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">Any fraud, whether or not material, that involves management or other employees who have a significant role in
the registrant&#146;s internal control over financial reporting. </P></TD></TR></TABLE> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P><DIV ALIGN="right">
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="40%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt">


<TR>

<TD WIDTH="100%"></TD></TR>


<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">Date: November&nbsp;5, 2020</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:1pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman" ALIGN="center">/s/&nbsp;TONY J. HUNT</P></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" ALIGN="center"><B>Tony J. Hunt</B></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" ALIGN="center"><B>President and Chief Executive Officer</B></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" ALIGN="center"><B>(Principal executive officer)</B></TD></TR>
</TABLE></DIV>
</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>3
<FILENAME>d945763dex312.htm
<DESCRIPTION>EX-31.2
<TEXT>
<HTML><HEAD>
<TITLE>EX-31.2</TITLE>
</HEAD>
 <BODY BGCOLOR="WHITE">


<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right"><B>Exhibit 31.2 </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>CERTIFICATION OF PRINCIPAL FINANCIAL OFFICER PURSUANT TO RULE <FONT STYLE="white-space:nowrap">13a-14(a)</FONT> / RULE <FONT
STYLE="white-space:nowrap">15d-14(a)</FONT> OF THE SECURITIES EXCHANGE ACT OF 1934, AS AMENDED </B></P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">I, Jon Snodgres, certify that: </P>
<P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%" VALIGN="top" ALIGN="left">1.</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">I have reviewed this Quarterly Report on Form <FONT STYLE="white-space:nowrap">10-Q</FONT> of Repligen
Corporation; </P></TD></TR></TABLE> <P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%" VALIGN="top" ALIGN="left">2.</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a
material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report; </P></TD></TR></TABLE>
<P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%" VALIGN="top" ALIGN="left">3.</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">Based on my knowledge, the financial statements, and other financial information included in this report,
fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report; </P></TD></TR></TABLE>
<P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%" VALIGN="top" ALIGN="left">4.</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">The registrant&#146;s other certifying officer(s) and I are responsible for establishing and maintaining
disclosure controls and procedures (as defined in Exchange Act Rules <FONT STYLE="white-space:nowrap">13a-15(e)</FONT> and <FONT STYLE="white-space:nowrap">15d-15(e))</FONT> and internal control over financial reporting (as defined in Exchange Act
Rules <FONT STYLE="white-space:nowrap">13a-15(f)</FONT> and <FONT STYLE="white-space:nowrap">15d-15(f))</FONT> for the registrant and have: </P></TD></TR></TABLE> <P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%">&nbsp;</TD>
<TD WIDTH="5%" VALIGN="top" ALIGN="left">(a)</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be
designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is
being prepared; </P></TD></TR></TABLE> <P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%">&nbsp;</TD>
<TD WIDTH="5%" VALIGN="top" ALIGN="left">(b)</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">Designed such internal control over financial reporting, or caused such internal control over financial
reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting
principles; </P></TD></TR></TABLE> <P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%">&nbsp;</TD>
<TD WIDTH="5%" VALIGN="top" ALIGN="left">(c)</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">Evaluated the effectiveness of the registrant&#146;s disclosure controls and procedures and presented in this
report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and </P></TD></TR></TABLE>
<P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%">&nbsp;</TD>
<TD WIDTH="5%" VALIGN="top" ALIGN="left">(d)</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">Disclosed in this report any change in the registrant&#146;s internal control over financial reporting that
occurred during the registrant&#146;s most recent fiscal quarter (the registrant&#146;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#146;s internal
control over financial reporting; and </P></TD></TR></TABLE> <P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%" VALIGN="top" ALIGN="left">5.</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">The registrant&#146;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of
internal control over financial reporting, to the registrant&#146;s auditors and the audit committee of the registrant&#146;s board of directors (or persons performing the equivalent functions): </P></TD></TR></TABLE>
<P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%">&nbsp;</TD>
<TD WIDTH="5%" VALIGN="top" ALIGN="left">(a)</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">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&#146;s ability to record, process, summarize and report financial information; and </P></TD></TR></TABLE>
<P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%">&nbsp;</TD>
<TD WIDTH="5%" VALIGN="top" ALIGN="left">(b)</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">Any fraud, whether or not material, that involves management or other employees who have a significant role in
the registrant&#146;s internal control over financial reporting. </P></TD></TR></TABLE> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P><DIV ALIGN="right">
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="40%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt">


<TR>

<TD WIDTH="100%"></TD></TR>


<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">Date: November&nbsp;5, 2020</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="bottom"> <P STYLE="margin-top:0pt; margin-bottom:1pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman" ALIGN="center">/s/&nbsp;J<SMALL>ON</SMALL> S<SMALL>NODGRES</SMALL></P></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="bottom" ALIGN="center"><B>Jon Snodgres</B></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="bottom" ALIGN="center"><B>Chief Financial Officer</B></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="bottom" ALIGN="center"><B>(Principal financial officer)</B></TD></TR>
</TABLE></DIV>
</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>4
<FILENAME>d945763dex321.htm
<DESCRIPTION>EX-32.1
<TEXT>
<HTML><HEAD>
<TITLE>EX-32.1</TITLE>
</HEAD>
 <BODY BGCOLOR="WHITE">


<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right"><B>Exhibit 32.1* </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>CERTIFICATION PURSUANT TO </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>18 U.S.C. SECTION 1350, </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>AS ADOPTED PURSUANT TO </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002 </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">In connection with the Quarterly Report of Repligen Corporation (the &#147;Company&#148;) on Form <FONT STYLE="white-space:nowrap">10-Q</FONT> for the period
ended September&nbsp;30, 2020 as filed with the Securities and Exchange Commission on the date hereof (the &#147;Report&#148;), the undersigned officers of the Company hereby certify, pursuant to 18 U.S.C. Section&nbsp;1350, as adopted pursuant to
Section&nbsp;906 of the Sarbanes-Oxley Act of 2002, to my knowledge, that: </P> <P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%">&nbsp;</TD>
<TD WIDTH="5%" VALIGN="top" ALIGN="left">(1)</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">The Report fully complies with the requirements of Section&nbsp;13(a) or 15(d) of the Securities Exchange Act
of 1934; and </P></TD></TR></TABLE> <P STYLE="font-size:6pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%">&nbsp;</TD>
<TD WIDTH="5%" VALIGN="top" ALIGN="left">(2)</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">The information contained in the Report fairly presents, in all material respects, the financial condition and
results of operations of the Company. </P></TD></TR></TABLE> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="100%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt">


<TR>

<TD WIDTH="47%"></TD>

<TD VALIGN="bottom" WIDTH="1%"></TD>
<TD WIDTH="4%"></TD>

<TD VALIGN="bottom"></TD>
<TD WIDTH="47%"></TD></TR>


<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">Date: November&nbsp;5, 2020</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top">By:</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:1pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman" ALIGN="center">/<SMALL>S</SMALL>/ T<SMALL>ONY</SMALL> J. H<SMALL>UNT</SMALL></P></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" ALIGN="center"><B>Tony J. Hunt</B></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" ALIGN="center"><B>Chief Executive Officer and President</B></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" ALIGN="center"><B>(Principal executive officer)</B></TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">Date: November&nbsp;5, 2020</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top">By:</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:1pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman" ALIGN="center">/<SMALL>S</SMALL>/ J<SMALL>ON</SMALL> S<SMALL>NODGRES</SMALL></P></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" ALIGN="center"><B>Jon Snodgres</B></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" ALIGN="center"><B>Chief Financial Officer</B></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" ALIGN="center"><B>(Principal financial officer)</B></TD></TR>
</TABLE> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="2%" VALIGN="top" ALIGN="left">*</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">This certification shall not be deemed &#147;filed&#148; for purposes of Section&nbsp;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. </P></TD></TR></TABLE>
</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>5
<FILENAME>rgen-20200930.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by DFIN XBRL Instance Document - http://www.dfinsolutions.com/ - Version R3.0 - on 04-November-2020 [01:20:39] {PM}-->
<schema targetNamespace="http://www.repligencorp.com/20200930" elementFormDefault="qualified" xmlns:rgen="http://www.repligencorp.com/20200930" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xl="http://www.xbrl.org/2003/XLink" xmlns:us-gaap="http://fasb.org/us-gaap/2019-01-31" xmlns:country="http://xbrl.sec.gov/country/2017-01-31" xmlns:currency="http://xbrl.sec.gov/currency/2019-01-31" xmlns:dei="http://xbrl.sec.gov/dei/2019-01-31" xmlns:exch="http://xbrl.sec.gov/exch/2019-01-31" xmlns:naics="http://xbrl.sec.gov/naics/2017-01-31" xmlns:sic="http://xbrl.sec.gov/sic/2011-01-31" xmlns:us-types="http://fasb.org/us-types/2019-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2018-01-31" xmlns:deprecated="http://www.xbrl.org/2009/arcrole/fact-explanatoryFact" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:srt="http://fasb.org/srt/2019-01-31" xmlns:srt-types="http://fasb.org/srt-types/2019-01-31">
<annotation>
<appinfo>
<link:roleType roleURI="http://www.repligencorp.com/role/CoverPage" id="CoverPage">
<link:definition>1001 - Document - Cover Page</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheets" id="ConsolidatedBalanceSheets">
<link:definition>1002 - Statement - CONSOLIDATED BALANCE SHEETS</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical" id="ConsolidatedBalanceSheetsParenthetical">
<link:definition>1003 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss" id="ConsolidatedStatementsOfComprehensiveIncomeLoss">
<link:definition>1004 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity" id="ConsolidatedStatementsOfStockholdersEquity">
<link:definition>1005 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical" id="ConsolidatedStatementsOfStockholdersEquityParenthetical">
<link:definition>1006 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows" id="ConsolidatedStatementsOfCashFlows">
<link:definition>1007 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SummaryOfSignificantAccountingPolicies" id="SummaryOfSignificantAccountingPolicies">
<link:definition>1008 - Disclosure - Summary of Significant Accounting Policies</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/FairValueMeasurements" id="FairValueMeasurements">
<link:definition>1009 - Disclosure - Fair Value Measurements</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/Acquisitions" id="Acquisitions">
<link:definition>1010 - Disclosure - Acquisitions</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/RevenueRecognition" id="RevenueRecognition">
<link:definition>1011 - Disclosure - Revenue Recognition</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/CreditLosses" id="CreditLosses">
<link:definition>1012 - Disclosure - Credit Losses</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/GoodwillAndIntangibleAssets" id="GoodwillAndIntangibleAssets">
<link:definition>1013 - Disclosure - Goodwill and Intangible Assets</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetail" id="ConsolidatedBalanceSheetDetail">
<link:definition>1014 - Disclosure - Consolidated Balance Sheet Detail</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ConvertibleSeniorNotes" id="ConvertibleSeniorNotes">
<link:definition>1015 - Disclosure - Convertible Senior Notes</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/StockholdersEquity" id="StockholdersEquity">
<link:definition>1016 - Disclosure - Stockholders' Equity</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/CommitmentsAndContingencies" id="CommitmentsAndContingencies">
<link:definition>1017 - Disclosure - Commitments and Contingencies</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLoss" id="AccumulatedOtherComprehensiveLoss">
<link:definition>1018 - Disclosure - Accumulated Other Comprehensive Loss</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/IncomeTaxes" id="IncomeTaxes">
<link:definition>1019 - Disclosure - Income Taxes</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/EarningsPerShare" id="EarningsPerShare">
<link:definition>1020 - Disclosure - Earnings Per Share</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/RelatedPartyTransactions" id="RelatedPartyTransactions">
<link:definition>1021 - Disclosure - Related Party Transactions</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SegmentReporting" id="SegmentReporting">
<link:definition>1022 - Disclosure - Segment Reporting</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SubsequentEvents" id="SubsequentEvents">
<link:definition>1023 - Disclosure - Subsequent Events</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SummaryOfSignificantAccountingPoliciesPolicies" id="SummaryOfSignificantAccountingPoliciesPolicies">
<link:definition>1024 - Disclosure - Summary of Significant Accounting Policies (Policies)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/AcquisitionsTables" id="AcquisitionsTables">
<link:definition>1025 - Disclosure - Acquisitions (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/RevenueRecognitionTables" id="RevenueRecognitionTables">
<link:definition>1026 - Disclosure - Revenue Recognition (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/CreditLossesTables" id="CreditLossesTables">
<link:definition>1027 - Disclosure - Credit Losses (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables" id="GoodwillAndIntangibleAssetsTables">
<link:definition>1028 - Disclosure - Goodwill and Intangible Assets (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetailTables" id="ConsolidatedBalanceSheetDetailTables">
<link:definition>1029 - Disclosure - Consolidated Balance Sheet Detail (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ConvertibleSeniorNotesTables" id="ConvertibleSeniorNotesTables">
<link:definition>1030 - Disclosure - Convertible Senior Notes (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/StockholdersEquityTables" id="StockholdersEquityTables">
<link:definition>1031 - Disclosure - Stockholders' Equity (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLossTables" id="AccumulatedOtherComprehensiveLossTables">
<link:definition>1032 - Disclosure - Accumulated Other Comprehensive Loss (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/IncomeTaxesTables" id="IncomeTaxesTables">
<link:definition>1033 - Disclosure - Income Taxes (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/EarningsPerShareTables" id="EarningsPerShareTables">
<link:definition>1034 - Disclosure - Earnings Per Share (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SegmentReportingTables" id="SegmentReportingTables">
<link:definition>1035 - Disclosure - Segment Reporting (Tables)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail" id="FairValueMeasurementAdditionalInformationDetail">
<link:definition>1036 - Disclosure - Fair Value Measurement - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail" id="AcquisitionsAdditionalInformationDetail">
<link:definition>1037 - Disclosure - Acquisitions - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail" id="AcquisitionsFairValueOfNetAssetsAcquiredDetail">
<link:definition>1038 - Disclosure - Acquisitions (Fair Value of Net Assets Acquired) (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail" id="AcquisitionsEstimatedUsefulLifeAndFairValueDetail">
<link:definition>1039 - Disclosure - Acquisitions (Estimated Useful Life and Fair Value) (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail" id="AcquisitionsUnauditedSupplementalProFormaInformationDetail">
<link:definition>1040 - Disclosure - Acquisitions (Unaudited Supplemental Pro Forma Information) (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail" id="SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail">
<link:definition>1041 - Schedule - Summary of Disaggregation of Product Revenues from Contracts with Customers by Major Product Line (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/RevenueFromSignificantCustomersDetail" id="RevenueFromSignificantCustomersDetail">
<link:definition>1042 - Disclosure - Revenue from Significant Customers (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail" id="SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail">
<link:definition>1043 - Disclosure - Summary of Receivables and Deferred Revenue from Contracts with Customers (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/CreditLossesAdditionalInformationDetail" id="CreditLossesAdditionalInformationDetail">
<link:definition>1044 - Disclosure - Credit Losses - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/CreditLossesSummaryOfAllowanceForCreditLossesForAccountsReceivablesDetail" id="CreditLossesSummaryOfAllowanceForCreditLossesForAccountsReceivablesDetail">
<link:definition>1045 - Disclosure - Credit Losses - Summary Of Allowance For Credit Losses For Accounts Receivables (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail" id="ChangesInCarryingValueOfGoodwillDetail">
<link:definition>1046 - Disclosure - Changes in Carrying Value of Goodwill (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail" id="GoodwillAndIntangibleAssetsDetail">
<link:definition>1047 - Disclosure - Goodwill and Intangible Assets (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail" id="GoodwillAndIntangibleAssetsAdditionalInformationDetail">
<link:definition>1048 - Disclosure - Goodwill and Intangible Assets - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail" id="AmortizationExpenseForAmortizedIntangibleAssetsDetail">
<link:definition>1049 - Disclosure - Amortization Expense for Amortized Intangible Assets (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ScheduleOfInventoriesDetail" id="ScheduleOfInventoriesDetail">
<link:definition>1050 - Disclosure - Schedule of Inventories (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail" id="PropertyPlantAndEquipmentDetail">
<link:definition>1051 - Disclosure - Property, Plant and Equipment (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail" id="ConsolidatedBalanceSheetAdditionalInformationDetail">
<link:definition>1052 - Disclosure - Consolidated Balance Sheet - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail" id="ScheduleOfAccruedLiabilitiesDetail">
<link:definition>1053 - Disclosure - Schedule of Accrued Liabilities (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail" id="ConvertibleSeniorNotesAdditionalInformationDetail">
<link:definition>1054 - Disclosure - Convertible Senior Notes - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail" id="ConvertibleSeniorNotesConvertibleDebtDetail">
<link:definition>1055 - Disclosure - Convertible Senior Notes - Convertible Debt (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail" id="StockholdersEquityAdditionalInformationDetail">
<link:definition>1056 - Disclosure - Stockholders' Equity - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail" id="StockBasedCompensationExpenseDetail">
<link:definition>1057 - Disclosure - Stock-Based Compensation Expense (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SummaryOfOptionActivityDetail" id="SummaryOfOptionActivityDetail">
<link:definition>1058 - Disclosure - Summary of Option Activity (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail" id="SummaryOfOptionActivityParentheticalDetail">
<link:definition>1059 - Disclosure - Summary of Option Activity (Parenthetical) (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail" id="SummaryOfRestrictedStockUnitActivityDetail">
<link:definition>1060 - Disclosure - Summary of Restricted Stock Unit Activity (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail" id="SummaryOfRestrictedStockUnitActivityParentheticalDetail">
<link:definition>1061 - Disclosure - Summary of Restricted Stock Unit Activity (Parenthetical) (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail" id="CommitmentsAndContingenciesAdditionalInformationDetail">
<link:definition>1062 - Disclosure - Commitments and Contingencies - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail" id="ChangeInAccumulatedOtherComprehensiveLossDetail">
<link:definition>1063 - Disclosure - Change in Accumulated Other Comprehensive Loss (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail" id="IncomeTaxesAdditionalInformationDetail">
<link:definition>1064 - Disclosure - Income Taxes - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail" id="SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail">
<link:definition>1065 - Disclosure - Summary of Tax Returns Periods Subject to Examination by Federal, State and International Tax Authorities (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail" id="EarningsPerShareAdditionalInformationDetail">
<link:definition>1066 - Disclosure - Earnings Per Share - (Additional Information) (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" id="EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail">
<link:definition>1067 - Disclosure - Earnings Per Share - (Reconciliation of Basic and Diluted Shares Amounts) (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail" id="RelatedPartyTransactionsAdditionalInformationDetail">
<link:definition>1068 - Disclosure - Related Party Transactions - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail" id="SegmentReportingAdditionalInformationDetail">
<link:definition>1069 - Disclosure - Segment Reporting - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails" id="SegmentReportingPercentageOfRevenueByGeographicAreaDetails">
<link:definition>1070 - Disclosure - Segment Reporting - (Percentage of Revenue by Geographic Area) (Details)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail" id="SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail">
<link:definition>1071 - Disclosure - Segment Reporting - Percentage of Revenue from Significant Customers (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:roleType roleURI="http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail" id="SubsequentEventsAdditionalInformationDetail">
<link:definition>1072 - Disclosure - Subsequent Events - Additional Information (Detail)</link:definition>
<link:usedOn>link:presentationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:calculationLink</link:usedOn>
</link:roleType>
<link:linkbaseRef xlink:type="simple" xlink:href="rgen-20200930_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
<link:linkbaseRef xlink:type="simple" xlink:href="rgen-20200930_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
<link:linkbaseRef xlink:type="simple" xlink:href="rgen-20200930_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
<link:linkbaseRef xlink:type="simple" xlink:href="rgen-20200930_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
</appinfo>
</annotation>
<import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
<import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" />
<import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" />
<import namespace="http://fasb.org/us-gaap/2019-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd" />
<import namespace="http://xbrl.sec.gov/country/2017-01-31" schemaLocation="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd" />
<import namespace="http://xbrl.sec.gov/currency/2019-01-31" schemaLocation="https://xbrl.sec.gov/currency/2019/currency-2019-01-31.xsd" />
<import namespace="http://xbrl.sec.gov/exch/2019-01-31" schemaLocation="https://xbrl.sec.gov/exch/2019/exch-2019-01-31.xsd" />
<import namespace="http://xbrl.sec.gov/naics/2017-01-31" schemaLocation="http://xbrl.sec.gov/naics/2017/naics-2017-01-31.xsd" />
<import namespace="http://xbrl.sec.gov/sic/2011-01-31" schemaLocation="http://xbrl.sec.gov/sic/2011/sic-2011-01-31.xsd" />
<import namespace="http://xbrl.sec.gov/stpr/2018-01-31" schemaLocation="https://xbrl.sec.gov/stpr/2018/stpr-2018-01-31.xsd" />
<import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd" />
<import namespace="http://www.xbrl.org/2009/role/net" schemaLocation="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd" />
<import namespace="http://www.xbrl.org/2009/arcrole/fact-explanatoryFact" schemaLocation="http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd" />
<import namespace="http://xbrl.sec.gov/dei/2019-01-31" schemaLocation="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd" />
<import namespace="http://www.xbrl.org/dtr/type/numeric" schemaLocation="http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd" />
<import namespace="http://www.xbrl.org/dtr/type/non-numeric" schemaLocation="http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd" />
<import namespace="http://fasb.org/us-types/2019-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2019/elts/us-types-2019-01-31.xsd" />
<import namespace="http://fasb.org/srt/2019-01-31" schemaLocation="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd" />
<import namespace="http://fasb.org/srt-types/2019-01-31" schemaLocation="http://xbrl.fasb.org/srt/2019/elts/srt-types-2019-01-31.xsd" />
<element name="AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember" substitutionGroup="xbrli:item" />
<element name="IncreasedecreaseInOperatingLeaseRightOfUseAsset" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="IncreasedecreaseInOperatingLeaseLiability" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="rgen_IncreasedecreaseInOperatingLeaseLiability" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="AssetsAcquiredUnderOperatingLeases" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="rgen_AssetsAcquiredUnderOperatingLeases" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="GoodwillAndOtherIntangibleAssetsDisclosureAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" substitutionGroup="xbrli:item" />
<element name="RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock" type="nonnum:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock" substitutionGroup="xbrli:item" />
<element name="CTechnologiesMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_CTechnologiesMember" substitutionGroup="xbrli:item" />
<element name="EngineeredMoldingTechnologyLlcMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_EngineeredMoldingTechnologyLlcMember" substitutionGroup="xbrli:item" />
<element name="ScheduleOfRevenueByMajorCustomersTableTextBlock" type="nonnum:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="rgen_ScheduleOfRevenueByMajorCustomersTableTextBlock" substitutionGroup="xbrli:item" />
<element name="ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" type="nonnum:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" substitutionGroup="xbrli:item" />
<element name="SummaryOfSignificantAccountingPoliciesTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_SummaryOfSignificantAccountingPoliciesTable" substitutionGroup="xbrldt:hypercubeItem" />
<element name="SummaryOfSignificantAccountingPoliciesLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_SummaryOfSignificantAccountingPoliciesLineItems" substitutionGroup="xbrli:item" />
<element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="BusinessCombinationConsiderationIndemnificationEscrow" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="rgen_BusinessCombinationConsiderationIndemnificationEscrow" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="MilliporeSigmaMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_MilliporeSigmaMember" substitutionGroup="xbrli:item" />
<element name="CytivaMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_CytivaMember" substitutionGroup="xbrli:item" />
<element name="ScheduleOfIntangibleAssetsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_ScheduleOfIntangibleAssetsTable" substitutionGroup="xbrldt:hypercubeItem" />
<element name="IntangibleAssetsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_IntangibleAssetsLineItems" substitutionGroup="xbrli:item" />
<element name="IndefiniteLivedIntangibleAssetsAccumulatedAmortization" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="IndefiniteLivedIntangibleAssetsNet" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_IndefiniteLivedIntangibleAssetsNet" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="FiniteLivedIntangibleLiabilitiesLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_FiniteLivedIntangibleLiabilitiesLineItems" substitutionGroup="xbrli:item" />
<element name="FacilityAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_FacilityAxis" substitutionGroup="xbrldt:dimensionItem" />
<element name="FacilityDomain" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_FacilityDomain" substitutionGroup="xbrli:item" />
<element name="RgenFacilityAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_RgenFacilityAxis" substitutionGroup="xbrldt:dimensionItem" />
<element name="RgenFacilityDomain" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_RgenFacilityDomain" substitutionGroup="xbrli:item" />
<element name="ScheduleOfAccruedLiabilitiesTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_ScheduleOfAccruedLiabilitiesTable" substitutionGroup="xbrldt:hypercubeItem" />
<element name="ScheduleOfAccruedLiabilitiesLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_ScheduleOfAccruedLiabilitiesLineItems" substitutionGroup="xbrli:item" />
<element name="TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember" substitutionGroup="xbrli:item" />
<element name="ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" substitutionGroup="xbrli:item" />
<element name="TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember" substitutionGroup="xbrli:item" />
<element name="OptionToPurchaseAdditionalDebtFaceAmount" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_OptionToPurchaseAdditionalDebtFaceAmount" substitutionGroup="xbrli:item" xbrli:balance="credit" />
<element name="DiscountRate" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="rgen_DiscountRate" substitutionGroup="xbrli:item" />
<element name="ConvertibleNotesTransactionCostsOfLiabilityComponent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="ConvertibleNotesTransactionCostsOfEquityComponent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_ConvertibleNotesTransactionCostsOfEquityComponent" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="DebtInstrumentFaceAmountRemaining" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_DebtInstrumentFaceAmountRemaining" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="StockholdersEquityNoteDisclosureTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_StockholdersEquityNoteDisclosureTable" substitutionGroup="xbrldt:hypercubeItem" />
<element name="NonEmployeeDirectorStockOptionMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_NonEmployeeDirectorStockOptionMember" substitutionGroup="xbrli:item" />
<element name="UnvestedOptionsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_UnvestedOptionsMember" substitutionGroup="xbrli:item" />
<element name="RestrictedStockAndPerformanceStockUnitsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_RestrictedStockAndPerformanceStockUnitsMember" substitutionGroup="xbrli:item" />
<element name="StockholdersEquityNoteDisclosureLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_StockholdersEquityNoteDisclosureLineItems" substitutionGroup="xbrli:item" />
<element name="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" substitutionGroup="xbrli:item" />
<element name="CommonStockIssuePricePerShare" type="num:perShareItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_CommonStockIssuePricePerShare" substitutionGroup="xbrli:item" />
<element name="StockOptionAndIncentivePlanMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_StockOptionAndIncentivePlanMember" substitutionGroup="xbrli:item" />
<element name="UnderwriterMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_UnderwriterMember" substitutionGroup="xbrli:item" />
<element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" substitutionGroup="xbrli:item" />
<element name="PercentageOfSharesSubjectToForfeiture" type="num:percentItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_PercentageOfSharesSubjectToForfeiture" substitutionGroup="xbrli:item" />
<element name="NonExecutiveMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_NonExecutiveMember" substitutionGroup="xbrli:item" />
<element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm" substitutionGroup="xbrli:item" />
<element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" substitutionGroup="xbrli:item" xbrli:balance="debit" />
<element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" substitutionGroup="xbrli:item" />
<element name="CommitmentsAndContingenciesTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_CommitmentsAndContingenciesTable" substitutionGroup="xbrldt:hypercubeItem" />
<element name="AmendmentAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_AmendmentAxis" substitutionGroup="xbrldt:dimensionItem" />
<element name="AmendmentDomain" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_AmendmentDomain" substitutionGroup="xbrli:item" />
<element name="CommitmentsAndContingenciesLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_CommitmentsAndContingenciesLineItems" substitutionGroup="xbrli:item" />
<element name="NGLImpactAMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_NGLImpactAMember" substitutionGroup="xbrli:item" />
<element name="IncomeTaxesTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_IncomeTaxesTable" substitutionGroup="xbrldt:hypercubeItem" />
<element name="IncomeTaxesLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_IncomeTaxesLineItems" substitutionGroup="xbrli:item" />
<element name="ReconciliationOfBasicAndDilutedSharesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_ReconciliationOfBasicAndDilutedSharesAbstract" substitutionGroup="xbrli:item" />
<element name="ScheduleOfEarningsPerShareBasicAndDilutedTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" substitutionGroup="xbrldt:hypercubeItem" />
<element name="ScheduleOfEarningsPerShareBasicAndDilutedLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" substitutionGroup="xbrli:item" />
<element name="ScheduleOfRelatedPartyTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_ScheduleOfRelatedPartyTable" substitutionGroup="xbrldt:hypercubeItem" />
<element name="SpectrumIncMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_SpectrumIncMember" substitutionGroup="xbrli:item" />
<element name="ApacOtherMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_ApacOtherMember" substitutionGroup="xbrli:item" />
<element name="ArtesynBiosolutionsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="rgen_ArtesynBiosolutionsMember" substitutionGroup="xbrli:item" />
</schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>6
<FILENAME>rgen-20200930_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by DFIN XBRL Instance Document - http://www.dfinsolutions.com/ - Version R3.0 - on 04-November-2020 [01:20:39] {PM}-->
<linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedBalanceSheets" roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheets" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedStatementsOfComprehensiveIncomeLoss" roleURI="http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedStatementsOfCashFlows" roleURI="http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AmortizationExpenseForAmortizedIntangibleAssetsDetail" roleURI="http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ScheduleOfInventoriesDetail" roleURI="http://www.repligencorp.com/role/ScheduleOfInventoriesDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#PropertyPlantAndEquipmentDetail" roleURI="http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ScheduleOfAccruedLiabilitiesDetail" roleURI="http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConvertibleSeniorNotesConvertibleDebtDetail" roleURI="http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" roleURI="http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" />
<calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedBalanceSheets">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="loc_us-gaap_AssetsCurrent" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherReceivablesGrossCurrent" xlink:label="loc_us-gaap_OtherReceivablesGrossCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="loc_us-gaap_OtherReceivablesGrossCurrent" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="loc_us-gaap_InventoryNet" use="optional" order="5" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" use="optional" order="6" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnbilledReceivablesCurrent" xlink:label="loc_us-gaap_UnbilledReceivablesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="loc_us-gaap_UnbilledReceivablesCurrent" use="optional" order="7" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedCash" xlink:label="loc_us-gaap_RestrictedCash" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="loc_us-gaap_RestrictedCash" use="optional" order="8" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet" use="optional" order="9" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill" use="optional" order="10" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="loc_us-gaap_Goodwill" use="optional" order="11" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaap_OtherAssetsNoncurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="loc_us-gaap_OtherAssetsNoncurrent" use="optional" order="12" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet" use="optional" order="13" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset" use="optional" order="14" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedBalanceSheets">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="loc_us-gaap_StockholdersEquity" use="optional" order="15" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaap_PreferredStockValue" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="loc_us-gaap_PreferredStockValue" use="optional" order="16" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaap_CommonStockValue" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="loc_us-gaap_CommonStockValue" use="optional" order="17" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock" use="optional" order="18" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" use="optional" order="19" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit" use="optional" order="20" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaap_Liabilities" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="loc_us-gaap_Liabilities" use="optional" order="21" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities" xlink:to="loc_us-gaap_LiabilitiesCurrent" use="optional" order="22" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="loc_us-gaap_AccountsPayableCurrent" use="optional" order="23" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent" use="optional" order="24" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent" use="optional" order="25" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleLongTermNotesPayable" xlink:label="loc_us-gaap_ConvertibleLongTermNotesPayable" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities" xlink:to="loc_us-gaap_ConvertibleLongTermNotesPayable" use="optional" order="26" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" xlink:label="loc_us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities" xlink:to="loc_us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" use="optional" order="27" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent" use="optional" order="28" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" use="optional" order="29" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaap_OperatingIncomeLoss" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostsAndExpenses" xlink:label="loc_us-gaap_CostsAndExpenses" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss" xlink:to="loc_us-gaap_CostsAndExpenses" use="optional" order="3" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CostsAndExpenses" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CostsAndExpenses" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense" use="optional" order="5" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CostsAndExpenses" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense" use="optional" order="6" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" use="optional" order="7" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaap_NonoperatingIncomeExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaap_NonoperatingIncomeExpense" use="optional" order="8" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentIncomeNet" xlink:label="loc_us-gaap_InvestmentIncomeNet" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NonoperatingIncomeExpense" xlink:to="loc_us-gaap_InvestmentIncomeNet" use="optional" order="9" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestExpense" xlink:label="loc_us-gaap_InterestExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NonoperatingIncomeExpense" xlink:to="loc_us-gaap_InterestExpense" use="optional" order="10" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NonoperatingIncomeExpense" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense" use="optional" order="11" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NonoperatingIncomeExpense" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" use="optional" order="12" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit" use="optional" order="13" weight="-1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" use="optional" order="14" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="loc_us-gaap_NetIncomeLoss" use="optional" order="15" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" use="optional" order="3" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireSoftware" xlink:label="loc_us-gaap_PaymentsToAcquireSoftware" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaap_PaymentsToAcquireSoftware" use="optional" order="4" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" use="optional" order="5" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" use="optional" order="6" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationAndAmortization" xlink:label="loc_us-gaap_DepreciationAndAmortization" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_DepreciationAndAmortization" use="optional" order="7" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfDebtDiscountPremium" xlink:label="loc_us-gaap_AmortizationOfDebtDiscountPremium" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_AmortizationOfDebtDiscountPremium" use="optional" order="8" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_ShareBasedCompensation" use="optional" order="9" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" use="optional" order="10" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" use="optional" order="11" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherReceivables" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherReceivables" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherReceivables" use="optional" order="12" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories" use="optional" order="13" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" use="optional" order="14" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable" use="optional" order="15" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities" use="optional" order="16" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" use="optional" order="17" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_NetIncomeLoss" use="optional" order="18" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="loc_us-gaap_OtherNoncashIncomeExpense" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_OtherNoncashIncomeExpense" use="optional" order="19" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:label="loc_us-gaap_IncreaseDecreaseInContractWithCustomerAsset" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_IncreaseDecreaseInContractWithCustomerAsset" use="optional" order="20" weight="-1" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" xlink:label="loc_RGEN_IncreasedecreaseInOperatingLeaseRightOfUseAsset" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_RGEN_IncreasedecreaseInOperatingLeaseRightOfUseAsset" use="optional" order="21" weight="-1" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IncreasedecreaseInOperatingLeaseLiability" xlink:label="loc_RGEN_IncreasedecreaseInOperatingLeaseLiability" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_RGEN_IncreasedecreaseInOperatingLeaseLiability" use="optional" order="22" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets" use="optional" order="23" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" use="optional" order="24" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" use="optional" order="25" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromConvertibleDebt" xlink:label="loc_us-gaap_ProceedsFromConvertibleDebt" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaap_ProceedsFromConvertibleDebt" use="optional" order="26" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfCommonStock" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfCommonStock" use="optional" order="27" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaap_ProceedsFromStockOptionsExercised" use="optional" order="28" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfConvertibleDebt" xlink:label="loc_us-gaap_RepaymentsOfConvertibleDebt" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaap_RepaymentsOfConvertibleDebt" use="optional" order="29" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" use="optional" order="30" weight="-1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" use="optional" order="5" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" use="optional" order="6" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ScheduleOfInventoriesDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet" xlink:to="loc_us-gaap_InventoryWorkInProcessNetOfReserves" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves" use="optional" order="3" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" use="optional" order="1" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Land" xlink:label="loc_us-gaap_Land" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="loc_us-gaap_Land" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="loc_us-gaap_BuildingsAndImprovementsGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="loc_us-gaap_BuildingsAndImprovementsGross" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseholdImprovementsGross" xlink:label="loc_us-gaap_LeaseholdImprovementsGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="loc_us-gaap_LeaseholdImprovementsGross" use="optional" order="5" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="loc_us-gaap_MachineryAndEquipmentGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="loc_us-gaap_MachineryAndEquipmentGross" use="optional" order="6" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FurnitureAndFixturesGross" xlink:label="loc_us-gaap_FurnitureAndFixturesGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="loc_us-gaap_FurnitureAndFixturesGross" use="optional" order="7" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConstructionInProgressGross" xlink:label="loc_us-gaap_ConstructionInProgressGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="loc_us-gaap_ConstructionInProgressGross" use="optional" order="8" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentOther" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentOther" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentOther" use="optional" order="9" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareGross" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareGross" use="optional" order="10" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedProfessionalFeesCurrent" xlink:label="loc_us-gaap_AccruedProfessionalFeesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_us-gaap_AccruedProfessionalFeesCurrent" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="loc_us-gaap_DeferredRevenueCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_us-gaap_DeferredRevenueCurrent" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent" use="optional" order="4" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedRoyaltiesCurrent" xlink:label="loc_us-gaap_AccruedRoyaltiesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_us-gaap_AccruedRoyaltiesCurrent" use="optional" order="5" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent" use="optional" order="6" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" use="optional" order="7" weight="1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleNotesPayable" xlink:label="loc_us-gaap_ConvertibleNotesPayable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ConvertibleNotesPayable" xlink:to="loc_us-gaap_DebtInstrumentCarryingAmount" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscount" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscount" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ConvertibleNotesPayable" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscount" use="optional" order="2" weight="-1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="loc_us-gaap_DeferredFinanceCostsNet" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ConvertibleNotesPayable" xlink:to="loc_us-gaap_DeferredFinanceCostsNet" use="optional" order="3" weight="-1" />
</calculationLink>
<calculationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" use="optional" order="1" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesRestrictedStock" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesRestrictedStock" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesRestrictedStock" use="optional" order="2" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="loc_us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" use="optional" order="3" weight="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
<calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" use="optional" order="4" weight="1" />
</calculationLink>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>7
<FILENAME>rgen-20200930_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by DFIN XBRL Instance Document - http://www.dfinsolutions.com/ - Version R3.0 - on 04-November-2020 [01:20:39] {PM}-->
<linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:xbrldt="http://xbrl.org/2005/xbrldt">
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedBalanceSheets" roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheets" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedBalanceSheetsParenthetical" roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedStatementsOfComprehensiveIncomeLoss" roleURI="http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedStatementsOfStockholdersEquity" roleURI="http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedStatementsOfStockholdersEquityParenthetical" roleURI="http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedStatementsOfCashFlows" roleURI="http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfSignificantAccountingPolicies" roleURI="http://www.repligencorp.com/role/SummaryOfSignificantAccountingPolicies" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#FairValueMeasurements" roleURI="http://www.repligencorp.com/role/FairValueMeasurements" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#Acquisitions" roleURI="http://www.repligencorp.com/role/Acquisitions" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedBalanceSheetDetail" roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConvertibleSeniorNotes" roleURI="http://www.repligencorp.com/role/ConvertibleSeniorNotes" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#StockholdersEquity" roleURI="http://www.repligencorp.com/role/StockholdersEquity" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#CommitmentsAndContingencies" roleURI="http://www.repligencorp.com/role/CommitmentsAndContingencies" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AccumulatedOtherComprehensiveLoss" roleURI="http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLoss" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#IncomeTaxes" roleURI="http://www.repligencorp.com/role/IncomeTaxes" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#EarningsPerShare" roleURI="http://www.repligencorp.com/role/EarningsPerShare" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#RelatedPartyTransactions" roleURI="http://www.repligencorp.com/role/RelatedPartyTransactions" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SubsequentEvents" roleURI="http://www.repligencorp.com/role/SubsequentEvents" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfSignificantAccountingPoliciesPolicies" roleURI="http://www.repligencorp.com/role/SummaryOfSignificantAccountingPoliciesPolicies" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AcquisitionsTables" roleURI="http://www.repligencorp.com/role/AcquisitionsTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#GoodwillAndIntangibleAssetsTables" roleURI="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedBalanceSheetDetailTables" roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetailTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConvertibleSeniorNotesTables" roleURI="http://www.repligencorp.com/role/ConvertibleSeniorNotesTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#StockholdersEquityTables" roleURI="http://www.repligencorp.com/role/StockholdersEquityTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AccumulatedOtherComprehensiveLossTables" roleURI="http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLossTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#IncomeTaxesTables" roleURI="http://www.repligencorp.com/role/IncomeTaxesTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#EarningsPerShareTables" roleURI="http://www.repligencorp.com/role/EarningsPerShareTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SegmentReportingTables" roleURI="http://www.repligencorp.com/role/SegmentReportingTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#FairValueMeasurementAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AcquisitionsAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AcquisitionsFairValueOfNetAssetsAcquiredDetail" roleURI="http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AcquisitionsEstimatedUsefulLifeAndFairValueDetail" roleURI="http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AcquisitionsUnauditedSupplementalProFormaInformationDetail" roleURI="http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail" roleURI="http://www.repligencorp.com/role/SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#RevenueFromSignificantCustomersDetail" roleURI="http://www.repligencorp.com/role/RevenueFromSignificantCustomersDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail" roleURI="http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ChangesInCarryingValueOfGoodwillDetail" roleURI="http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#GoodwillAndIntangibleAssetsDetail" roleURI="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#GoodwillAndIntangibleAssetsAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AmortizationExpenseForAmortizedIntangibleAssetsDetail" roleURI="http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ScheduleOfInventoriesDetail" roleURI="http://www.repligencorp.com/role/ScheduleOfInventoriesDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#PropertyPlantAndEquipmentDetail" roleURI="http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedBalanceSheetAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ScheduleOfAccruedLiabilitiesDetail" roleURI="http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConvertibleSeniorNotesAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConvertibleSeniorNotesConvertibleDebtDetail" roleURI="http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#StockholdersEquityAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#StockBasedCompensationExpenseDetail" roleURI="http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfOptionActivityDetail" roleURI="http://www.repligencorp.com/role/SummaryOfOptionActivityDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfOptionActivityParentheticalDetail" roleURI="http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfRestrictedStockUnitActivityDetail" roleURI="http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfRestrictedStockUnitActivityParentheticalDetail" roleURI="http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#CommitmentsAndContingenciesAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ChangeInAccumulatedOtherComprehensiveLossDetail" roleURI="http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#IncomeTaxesAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail" roleURI="http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#EarningsPerShareAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" roleURI="http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#RelatedPartyTransactionsAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SegmentReportingAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SegmentReportingPercentageOfRevenueByGeographicAreaDetails" roleURI="http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail" roleURI="http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SubsequentEventsAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#CoverPage" roleURI="http://www.repligencorp.com/role/CoverPage" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#RevenueRecognition" roleURI="http://www.repligencorp.com/role/RevenueRecognition" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#GoodwillAndIntangibleAssets" roleURI="http://www.repligencorp.com/role/GoodwillAndIntangibleAssets" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#CreditLosses" roleURI="http://www.repligencorp.com/role/CreditLosses" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#CreditLossesTables" roleURI="http://www.repligencorp.com/role/CreditLossesTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#CreditLossesAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/CreditLossesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#CreditLossesSummaryOfAllowanceForCreditLossesForAccountsReceivablesDetail" roleURI="http://www.repligencorp.com/role/CreditLossesSummaryOfAllowanceForCreditLossesForAccountsReceivablesDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SegmentReporting" roleURI="http://www.repligencorp.com/role/SegmentReporting" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#RevenueRecognitionTables" roleURI="http://www.repligencorp.com/role/RevenueRecognitionTables" />
<arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" />
<arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" />
<arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" />
<arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" />
<arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" />
<arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/notAll" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#notAll" />
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedBalanceSheets">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_29" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaap_AssetsAbstract_24" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_29" xlink:to="loc_us-gaap_AssetsAbstract_24" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_37" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_Assets_37" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaap_AssetsCurrentAbstract_25" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_AssetsCurrentAbstract_25" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_40" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_40" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent_44" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_AssetsCurrent_44" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_38" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_38" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_42" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_InventoryNet_42" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherReceivablesGrossCurrent" xlink:label="loc_us-gaap_OtherReceivablesGrossCurrent_41" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_OtherReceivablesGrossCurrent_41" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_43" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_43" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnbilledReceivablesCurrent" xlink:label="loc_us-gaap_UnbilledReceivablesCurrent_329075" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_UnbilledReceivablesCurrent_329075" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedCash" xlink:label="loc_us-gaap_RestrictedCash_465032" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_RestrictedCash_465032" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_34" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_Goodwill_34" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_33" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_33" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_36" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_36" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_32" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_32" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_332951" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_332951" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_409898" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_409898" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_29" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="loc_us-gaap_CommitmentsAndContingencies_49" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_CommitmentsAndContingencies_49" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleLongTermNotesPayable" xlink:label="loc_us-gaap_ConvertibleLongTermNotesPayable_46" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_ConvertibleLongTermNotesPayable_46" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" xlink:label="loc_us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent_47" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent_47" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_50" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_50" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_28" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_28" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent_51" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_28" xlink:to="loc_us-gaap_AccountsPayableCurrent_51" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_52" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_28" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_52" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent_53" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_28" xlink:to="loc_us-gaap_LiabilitiesCurrent_53" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_409907" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_28" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_409907" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_48" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_48" use="optional" order="28" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="loc_us-gaap_StockholdersEquityAbstract_31" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_StockholdersEquityAbstract_31" use="optional" order="29" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_57" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StockholdersEquityAbstract_31" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_57" use="optional" order="30" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_56" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StockholdersEquityAbstract_31" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_56" use="optional" order="31" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaap_CommonStockValue_55" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StockholdersEquityAbstract_31" xlink:to="loc_us-gaap_CommonStockValue_55" use="optional" order="32" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaap_PreferredStockValue_54" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StockholdersEquityAbstract_31" xlink:to="loc_us-gaap_PreferredStockValue_54" use="optional" order="33" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_59" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StockholdersEquityAbstract_31" xlink:to="loc_us-gaap_StockholdersEquity_59" use="optional" order="34" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_58" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StockholdersEquityAbstract_31" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_58" use="optional" order="35" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaap_Liabilities_309583" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_Liabilities_309583" use="optional" order="36" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_409908" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_409908" use="optional" order="37" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_30" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_29" xlink:to="loc_us-gaap_StatementTable_30" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="38" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_26" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_30" xlink:to="loc_dei_LegalEntityAxis_26" use="optional" order="39" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_45" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_26" xlink:to="loc_dei_EntityDomain_45" use="optional" order="40" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_45_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_26" xlink:to="loc_dei_EntityDomain_45_default" use="optional" order="41" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_63" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_66" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_66" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_71" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_71" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_72" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_72" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_73" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_CommonStockSharesIssued_73" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_74" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_74" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_67" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_PreferredStockParOrStatedValuePerShare_67" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_68" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_68" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="loc_us-gaap_PreferredStockSharesIssued_69" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_PreferredStockSharesIssued_69" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding_70" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_PreferredStockSharesOutstanding_70" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_64" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_StatementTable_64" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_62" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_64" xlink:to="loc_dei_LegalEntityAxis_62" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_65" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_62" xlink:to="loc_dei_EntityDomain_65" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_65_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_62" xlink:to="loc_dei_EntityDomain_65_default" use="optional" order="13" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_82" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_105" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_105" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostsAndExpensesAbstract" xlink:label="loc_us-gaap_CostsAndExpensesAbstract_77" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_CostsAndExpensesAbstract_77" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_85" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostsAndExpensesAbstract_77" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_85" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostsAndExpenses" xlink:label="loc_us-gaap_CostsAndExpenses_89" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostsAndExpensesAbstract_77" xlink:to="loc_us-gaap_CostsAndExpenses_89" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_86" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostsAndExpensesAbstract_77" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_86" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_87" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostsAndExpensesAbstract_77" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_87" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_102" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_102" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_103" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_103" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_104" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_NetIncomeLoss_104" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_98" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_OperatingIncomeLoss_98" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_80" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_80" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_94" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_80" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_94" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaap_RevenuesAbstract_81" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_RevenuesAbstract_81" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_284893" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesAbstract_81" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_284893" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_83" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_StatementTable_83" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_79" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_83" xlink:to="loc_dei_LegalEntityAxis_79" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_92" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_79" xlink:to="loc_dei_EntityDomain_92" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_92_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_79" xlink:to="loc_dei_EntityDomain_92_default" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_284889" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_83" xlink:to="loc_srt_ProductOrServiceAxis_284889" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_284890" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_284889" xlink:to="loc_srt_ProductsAndServicesDomain_284890" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_284890_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_284889" xlink:to="loc_srt_ProductsAndServicesDomain_284890_default" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductMember" xlink:label="loc_us-gaap_ProductMember_284891" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_284890" xlink:to="loc_us-gaap_ProductMember_284891" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RoyaltyMember" xlink:label="loc_us-gaap_RoyaltyMember_284892" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_284890" xlink:to="loc_us-gaap_RoyaltyMember_284892" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_84" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_84" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_107" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_84" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_107" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_106" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_84" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_106" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_311282" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_311282" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestExpense" xlink:label="loc_us-gaap_InterestExpense_100" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_311282" xlink:to="loc_us-gaap_InterestExpense_100" use="optional" order="28" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentIncomeNet" xlink:label="loc_us-gaap_InvestmentIncomeNet_99" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_311282" xlink:to="loc_us-gaap_InvestmentIncomeNet_99" use="optional" order="29" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_101" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_311282" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_101" use="optional" order="30" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaap_NonoperatingIncomeExpense_309667" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_311282" xlink:to="loc_us-gaap_NonoperatingIncomeExpense_309667" use="optional" order="31" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_499298" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_311282" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_499298" use="optional" order="32" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_78" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_EarningsPerShareAbstract_78" use="optional" order="33" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic_90" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EarningsPerShareAbstract_78" xlink:to="loc_us-gaap_EarningsPerShareBasic_90" use="optional" order="34" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_91" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EarningsPerShareAbstract_78" xlink:to="loc_us-gaap_EarningsPerShareDiluted_91" use="optional" order="35" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_113" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_132" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_132" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_122" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_NetIncomeLoss_122" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaap_SharesOutstanding_120" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_SharesOutstanding_120" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_114" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StatementTable_114" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_111" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_114" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_111" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_111" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_111" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119_default" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_112" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_114" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_112" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_110" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_112" xlink:to="loc_us-gaap_EquityComponentDomain_110" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_110_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_112" xlink:to="loc_us-gaap_EquityComponentDomain_110_default" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_117" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_110" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_117" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_116" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_110" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_116" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_115" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_110" xlink:to="loc_us-gaap_CommonStockMember_115" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember_118" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_110" xlink:to="loc_us-gaap_RetainedEarningsMember_118" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_121" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockholdersEquity_121" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_130" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_130" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_134" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_134" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues_128" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues_128" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_133" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_133" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueAcquisitions_309720" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueAcquisitions_309720" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesAcquisitions_309721" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesAcquisitions_309721" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax_309722" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax_309722" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfUnits" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfUnits_329130" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfUnits_329130" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits_329131" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits_329131" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" xlink:label="loc_rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt_499299" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt_499299" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_499300" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_499300" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_499301" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_499301" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt_499302" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt_499302" use="optional" order="28" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_140" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_143" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_140" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_143" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_141" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_140" xlink:to="loc_us-gaap_StatementTable_141" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_139" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_141" xlink:to="loc_dei_LegalEntityAxis_139" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_142" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_139" xlink:to="loc_dei_EntityDomain_142" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_142_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_139" xlink:to="loc_dei_EntityDomain_142_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_499304" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_141" xlink:to="loc_us-gaap_DebtInstrumentAxis_499304" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_499305" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_499304" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_499305" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_499305_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_499304" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_499305_default" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="loc_rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember_499358" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_499305" xlink:to="loc_rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember_499358" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_499303" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_140" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_499303" use="optional" order="10" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_154" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_191" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_191" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_190" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_190" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_189" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_189" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_179" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_179" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromConvertibleDebt" xlink:label="loc_us-gaap_ProceedsFromConvertibleDebt_175" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" xlink:to="loc_us-gaap_ProceedsFromConvertibleDebt_175" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_176" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_176" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised_177" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" xlink:to="loc_us-gaap_ProceedsFromStockOptionsExercised_177" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfConvertibleDebt" xlink:label="loc_us-gaap_RepaymentsOfConvertibleDebt_309772" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" xlink:to="loc_us-gaap_RepaymentsOfConvertibleDebt_309772" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_499309" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_499309" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_152" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_152" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_186" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_152" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_186" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_182" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_152" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_182" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_185" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_152" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_185" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireSoftware" xlink:label="loc_us-gaap_PaymentsToAcquireSoftware_329140" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_152" xlink:to="loc_us-gaap_PaymentsToAcquireSoftware_329140" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_153" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_153" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_153" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfDebtDiscountPremium" xlink:label="loc_us-gaap_AmortizationOfDebtDiscountPremium_158" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" xlink:to="loc_us-gaap_AmortizationOfDebtDiscountPremium_158" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_160" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_160" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationAndAmortization" xlink:label="loc_us-gaap_DepreciationAndAmortization_157" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" xlink:to="loc_us-gaap_DepreciationAndAmortization_157" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_159" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" xlink:to="loc_us-gaap_ShareBasedCompensation_159" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="loc_us-gaap_OtherNoncashIncomeExpense_312093" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" xlink:to="loc_us-gaap_OtherNoncashIncomeExpense_312093" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_499308" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_499308" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_153" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_171" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_171" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_167" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_167" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_172" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_172" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_169" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_169" use="optional" order="28" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities_173" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities_173" use="optional" order="29" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherReceivables" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherReceivables_168" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherReceivables_168" use="optional" order="30" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_170" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_170" use="optional" order="31" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:label="loc_us-gaap_IncreaseDecreaseInContractWithCustomerAsset_329139" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInContractWithCustomerAsset_329139" use="optional" order="32" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" xlink:label="loc_rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset_422198" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset_422198" use="optional" order="33" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IncreasedecreaseInOperatingLeaseLiability" xlink:label="loc_rgen_IncreasedecreaseInOperatingLeaseLiability_422204" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_rgen_IncreasedecreaseInOperatingLeaseLiability_422204" use="optional" order="34" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_467874" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_467874" use="optional" order="35" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_188" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_153" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_188" use="optional" order="36" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_187" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_153" xlink:to="loc_us-gaap_NetIncomeLoss_187" use="optional" order="37" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_155" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_StatementTable_155" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="38" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_148" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_155" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_148" use="optional" order="39" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_147" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_148" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_147" use="optional" order="40" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_147_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_148" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_147_default" use="optional" order="41" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_150" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_155" xlink:to="loc_dei_LegalEntityAxis_150" use="optional" order="42" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_174" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_150" xlink:to="loc_dei_EntityDomain_174" use="optional" order="43" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_174_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_150" xlink:to="loc_dei_EntityDomain_174_default" use="optional" order="44" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssued1" xlink:label="loc_us-gaap_StockIssued1_309806" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SupplementalCashFlowElementsAbstract_309774" xlink:to="loc_us-gaap_StockIssued1_309806" use="optional" order="45" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SupplementalCashFlowElementsAbstract" xlink:label="loc_us-gaap_SupplementalCashFlowElementsAbstract_309774" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_SupplementalCashFlowElementsAbstract_309774" use="optional" order="46" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentAmount1" xlink:label="loc_us-gaap_DebtConversionConvertedInstrumentAmount1_499310" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SupplementalCashFlowElementsAbstract_309774" xlink:to="loc_us-gaap_DebtConversionConvertedInstrumentAmount1_499310" use="optional" order="47" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_AssetsAcquiredUnderOperatingLeases" xlink:label="loc_rgen_AssetsAcquiredUnderOperatingLeases_681339" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SupplementalCashFlowElementsAbstract_309774" xlink:to="loc_rgen_AssetsAcquiredUnderOperatingLeases_681339" use="optional" order="48" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfSignificantAccountingPolicies">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1163" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_1166" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1163" xlink:to="loc_us-gaap_SignificantAccountingPoliciesTextBlock_1166" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1164" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1163" xlink:to="loc_us-gaap_StatementTable_1164" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1162" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1164" xlink:to="loc_dei_LegalEntityAxis_1162" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1165" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1162" xlink:to="loc_dei_EntityDomain_1165" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1165_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1162" xlink:to="loc_dei_EntityDomain_1165_default" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/FairValueMeasurements">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_411817" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock_409161" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_411817" xlink:to="loc_us-gaap_FairValueDisclosuresTextBlock_409161" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_411814" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_411817" xlink:to="loc_us-gaap_StatementTable_411814" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/Acquisitions">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1224" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1225" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1224" xlink:to="loc_us-gaap_StatementTable_1225" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1223" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1225" xlink:to="loc_dei_LegalEntityAxis_1223" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1226" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1223" xlink:to="loc_dei_EntityDomain_1226" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1226_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1223" xlink:to="loc_dei_EntityDomain_1226_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock_1227" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1224" xlink:to="loc_us-gaap_BusinessCombinationDisclosureTextBlock_1227" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_328201" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:label="loc_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock_310125" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_328201" xlink:to="loc_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock_310125" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_328198" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_328201" xlink:to="loc_us-gaap_StatementTable_328198" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_328199" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_328198" xlink:to="loc_us-gaap_StatementClassOfStockAxis_328199" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_328200" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_328199" xlink:to="loc_us-gaap_ClassOfStockDomain_328200" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_328200_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_328199" xlink:to="loc_us-gaap_ClassOfStockDomain_328200_default" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConvertibleSeniorNotes">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1332" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtTextBlock" xlink:label="loc_us-gaap_LongTermDebtTextBlock_1335" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1332" xlink:to="loc_us-gaap_LongTermDebtTextBlock_1335" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1333" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1332" xlink:to="loc_us-gaap_StatementTable_1333" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1331" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1333" xlink:to="loc_dei_LegalEntityAxis_1331" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1334" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1331" xlink:to="loc_dei_EntityDomain_1334" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1334_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1331" xlink:to="loc_dei_EntityDomain_1334_default" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/StockholdersEquity">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1266" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1267" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1266" xlink:to="loc_us-gaap_StatementTable_1267" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1265" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1267" xlink:to="loc_dei_LegalEntityAxis_1265" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1268" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1265" xlink:to="loc_dei_EntityDomain_1268" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1268_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1265" xlink:to="loc_dei_EntityDomain_1268_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_1269" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1266" xlink:to="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_1269" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/CommitmentsAndContingencies">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1283" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_1286" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1283" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_1286" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1284" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1283" xlink:to="loc_us-gaap_StatementTable_1284" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1282" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1284" xlink:to="loc_dei_LegalEntityAxis_1282" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1285" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1282" xlink:to="loc_dei_EntityDomain_1285" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1285_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1282" xlink:to="loc_dei_EntityDomain_1285_default" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLoss">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1346" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:label="loc_us-gaap_ComprehensiveIncomeNoteTextBlock_1349" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1346" xlink:to="loc_us-gaap_ComprehensiveIncomeNoteTextBlock_1349" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1347" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1346" xlink:to="loc_us-gaap_StatementTable_1347" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1345" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1347" xlink:to="loc_dei_LegalEntityAxis_1345" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1348" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1345" xlink:to="loc_dei_EntityDomain_1348" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1348_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1345" xlink:to="loc_dei_EntityDomain_1348_default" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/IncomeTaxes">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1247" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_1250" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1247" xlink:to="loc_us-gaap_IncomeTaxDisclosureTextBlock_1250" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1248" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1247" xlink:to="loc_us-gaap_StatementTable_1248" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1246" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1248" xlink:to="loc_dei_LegalEntityAxis_1246" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1249" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1246" xlink:to="loc_dei_EntityDomain_1249" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1249_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1246" xlink:to="loc_dei_EntityDomain_1249_default" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/EarningsPerShare">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_412033" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="loc_us-gaap_EarningsPerShareTextBlock_409431" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_412033" xlink:to="loc_us-gaap_EarningsPerShareTextBlock_409431" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_412030" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_412033" xlink:to="loc_us-gaap_StatementTable_412030" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_412031" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_412030" xlink:to="loc_us-gaap_StatementClassOfStockAxis_412031" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_412032" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_412031" xlink:to="loc_us-gaap_ClassOfStockDomain_412032" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_412032_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_412031" xlink:to="loc_us-gaap_ClassOfStockDomain_412032_default" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/RelatedPartyTransactions">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1367" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock_1370" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1367" xlink:to="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock_1370" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1368" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1367" xlink:to="loc_us-gaap_StatementTable_1368" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1366" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1368" xlink:to="loc_dei_LegalEntityAxis_1366" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1369" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1366" xlink:to="loc_dei_EntityDomain_1369" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1369_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1366" xlink:to="loc_dei_EntityDomain_1369_default" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SubsequentEvents">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_412055" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="loc_us-gaap_SubsequentEventsTextBlock_410104" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_412055" xlink:to="loc_us-gaap_SubsequentEventsTextBlock_410104" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_412052" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_412055" xlink:to="loc_us-gaap_StatementTable_412052" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_412053" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_412052" xlink:to="loc_us-gaap_StatementClassOfStockAxis_412053" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_412054" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_412053" xlink:to="loc_us-gaap_ClassOfStockDomain_412054" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_412054_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_412053" xlink:to="loc_us-gaap_ClassOfStockDomain_412054_default" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfSignificantAccountingPoliciesPolicies">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1170" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_1189" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1170" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_1189" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock" xlink:label="loc_rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock_1177" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1170" xlink:to="loc_rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock_1177" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1171" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1170" xlink:to="loc_us-gaap_StatementTable_1171" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1169" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1171" xlink:to="loc_dei_LegalEntityAxis_1169" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1172" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1169" xlink:to="loc_dei_EntityDomain_1172" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1172_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1169" xlink:to="loc_dei_EntityDomain_1172_default" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_680158" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1170" xlink:to="loc_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_680158" use="optional" order="7" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AcquisitionsTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1233" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_1242" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1233" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_1242" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_1241" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1233" xlink:to="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_1241" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1234" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1233" xlink:to="loc_us-gaap_StatementTable_1234" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_1231" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1234" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_1231" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1230" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1231" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1230" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1230_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1231" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1230_default" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CTechnologiesMember" xlink:label="loc_rgen_CTechnologiesMember_464374" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1230" xlink:to="loc_rgen_CTechnologiesMember_464374" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_EngineeredMoldingTechnologyLlcMember" xlink:label="loc_rgen_EngineeredMoldingTechnologyLlcMember_758233" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1230" xlink:to="loc_rgen_EngineeredMoldingTechnologyLlcMember_758233" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1232" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1234" xlink:to="loc_dei_LegalEntityAxis_1232" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1239" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1232" xlink:to="loc_dei_EntityDomain_1239" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1239_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1232" xlink:to="loc_dei_EntityDomain_1239_default" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_464375" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1233" xlink:to="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_464375" use="optional" order="12" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_328215" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock_310075" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_328215" xlink:to="loc_us-gaap_ScheduleOfGoodwillTextBlock_310075" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock_310081" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_328215" xlink:to="loc_rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock_310081" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_310082" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_328215" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_310082" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_328214" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_328215" xlink:to="loc_us-gaap_StatementTable_328214" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_328218" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_328214" xlink:to="loc_dei_LegalEntityAxis_328218" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_328219" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_328218" xlink:to="loc_dei_EntityDomain_328219" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_328219_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_328218" xlink:to="loc_dei_EntityDomain_328219_default" use="optional" order="7" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetailTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_328265" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_310129" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_328265" xlink:to="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_310129" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_310131" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_328265" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_310131" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_310132" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_328265" xlink:to="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_310132" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_328264" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_328265" xlink:to="loc_us-gaap_StatementTable_328264" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_328266" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_328264" xlink:to="loc_dei_LegalEntityAxis_328266" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_328267" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_328266" xlink:to="loc_dei_EntityDomain_328267" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_328267_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_328266" xlink:to="loc_dei_EntityDomain_328267_default" use="optional" order="7" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConvertibleSeniorNotesTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1339" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleDebtTableTextBlock" xlink:label="loc_us-gaap_ConvertibleDebtTableTextBlock_1342" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1339" xlink:to="loc_us-gaap_ConvertibleDebtTableTextBlock_1342" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1340" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1339" xlink:to="loc_us-gaap_StatementTable_1340" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1338" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1340" xlink:to="loc_dei_LegalEntityAxis_1338" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1341" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1338" xlink:to="loc_dei_EntityDomain_1341" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1341_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1338" xlink:to="loc_dei_EntityDomain_1341_default" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/StockholdersEquityTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1273" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_1276" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1273" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_1276" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_1279" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1273" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_1279" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_1278" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1273" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_1278" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1274" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1273" xlink:to="loc_us-gaap_StatementTable_1274" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_409521" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1274" xlink:to="loc_us-gaap_AwardTypeAxis_409521" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_409522" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_409521" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_409522" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_409522_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_409521" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_409522_default" use="optional" order="7" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLossTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1353" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_1356" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1353" xlink:to="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_1356" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1354" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1353" xlink:to="loc_us-gaap_StatementTable_1354" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1352" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1354" xlink:to="loc_dei_LegalEntityAxis_1352" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1355" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1352" xlink:to="loc_dei_EntityDomain_1355" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1355_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1352" xlink:to="loc_dei_EntityDomain_1355_default" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/IncomeTaxesTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1254" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1255" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1254" xlink:to="loc_us-gaap_StatementTable_1255" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1253" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1255" xlink:to="loc_dei_LegalEntityAxis_1253" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1256" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1253" xlink:to="loc_dei_EntityDomain_1256" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1256_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1253" xlink:to="loc_dei_EntityDomain_1256_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SummaryOfIncomeTaxExaminationsTextBlock" xlink:label="loc_us-gaap_SummaryOfIncomeTaxExaminationsTextBlock_1261" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1254" xlink:to="loc_us-gaap_SummaryOfIncomeTaxExaminationsTextBlock_1261" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/EarningsPerShareTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_500290" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_412041" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_500290" xlink:to="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_412041" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_500287" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_500290" xlink:to="loc_us-gaap_StatementTable_500287" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_500288" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_500287" xlink:to="loc_dei_LegalEntityAxis_500288" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_500289" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_500288" xlink:to="loc_dei_EntityDomain_500289" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_500289_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_500288" xlink:to="loc_dei_EntityDomain_500289_default" use="optional" order="5" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SegmentReportingTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_409403" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_409394" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_409403" xlink:to="loc_us-gaap_StatementTable_409394" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_409395" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_409394" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_409395" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_409396" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_409395" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_409396" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_409396_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_409395" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_409396_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_409398" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_409396" xlink:to="loc_us-gaap_SalesRevenueNetMember_409398" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock_409404" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_409403" xlink:to="loc_us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock_409404" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:label="loc_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock_409405" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_409403" xlink:to="loc_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock_409405" use="optional" order="7" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_SummaryOfSignificantAccountingPoliciesLineItems" xlink:label="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_265" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_265" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:label="loc_us-gaap_DebtInstrumentFrequencyOfPeriodicPayment_267" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_us-gaap_DebtInstrumentFrequencyOfPeriodicPayment_267" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="loc_us-gaap_DebtInstrumentMaturityDate_266" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_us-gaap_DebtInstrumentMaturityDate_266" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaap_LongTermDebt_269" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_us-gaap_LongTermDebt_269" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtFairValue" xlink:label="loc_us-gaap_LongTermDebtFairValue_270" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_us-gaap_LongTermDebtFairValue_270" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_SummaryOfSignificantAccountingPoliciesTable" xlink:label="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_218" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_218" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_239" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_218" xlink:to="loc_us-gaap_TypeOfAdoptionMember_239" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_239_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_218" xlink:to="loc_us-gaap_TypeOfAdoptionMember_239_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_220" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_AwardTypeAxis_220" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_232" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_220" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_232" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_232_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_220" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_232_default" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_221" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_DebtInstrumentAxis_221" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_222" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_221" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_222" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_222_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_221" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_222_default" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="loc_rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember_499357" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_222" xlink:to="loc_rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember_499357" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenueArrangementTypeAxis" xlink:label="loc_us-gaap_DeferredRevenueArrangementTypeAxis_223" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_DeferredRevenueArrangementTypeAxis_223" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenueArrangementTypeDomain" xlink:label="loc_us-gaap_DeferredRevenueArrangementTypeDomain_224" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DeferredRevenueArrangementTypeAxis_223" xlink:to="loc_us-gaap_DeferredRevenueArrangementTypeDomain_224" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenueArrangementTypeDomain" xlink:label="loc_us-gaap_DeferredRevenueArrangementTypeDomain_224_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DeferredRevenueArrangementTypeAxis_223" xlink:to="loc_us-gaap_DeferredRevenueArrangementTypeDomain_224_default" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_225" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_225" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_226" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_225" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_226" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_226_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_225" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_226_default" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_227" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_dei_LegalEntityAxis_227" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_246" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_227" xlink:to="loc_dei_EntityDomain_246" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_246_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_227" xlink:to="loc_dei_EntityDomain_246_default" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_228" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_srt_MajorCustomersAxis_228" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_229" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_228" xlink:to="loc_srt_NameOfMajorCustomerDomain_229" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_229_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_228" xlink:to="loc_srt_NameOfMajorCustomerDomain_229_default" use="optional" order="28" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_230" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_srt_RangeAxis_230" use="optional" order="29" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_231" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_230" xlink:to="loc_srt_RangeMember_231" use="optional" order="30" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_231_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_230" xlink:to="loc_srt_RangeMember_231_default" use="optional" order="31" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_233" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_233" use="optional" order="32" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_234" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_233" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_234" use="optional" order="33" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_234_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_233" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_234_default" use="optional" order="34" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_310007" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_310007" use="optional" order="35" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_310008" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_310007" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_310008" use="optional" order="36" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_310008_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_310007" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_310008_default" use="optional" order="37" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="loc_us-gaap_CashAndCashEquivalentsAxis_333058" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_CashAndCashEquivalentsAxis_333058" use="optional" order="38" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_333059" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CashAndCashEquivalentsAxis_333058" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_333059" use="optional" order="39" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_333059_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CashAndCashEquivalentsAxis_333058" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_333059_default" use="optional" order="40" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="loc_us-gaap_MoneyMarketFundsMember_333060" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_333059" xlink:to="loc_us-gaap_MoneyMarketFundsMember_333060" use="optional" order="41" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_333061" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_333061" use="optional" order="42" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_333062" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_333061" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_333062" use="optional" order="43" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_333062_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_333061" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_333062_default" use="optional" order="44" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_333063" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_333062" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_333063" use="optional" order="45" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_237" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_srt_TitleOfIndividualAxis_237" use="optional" order="46" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_238" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_TitleOfIndividualAxis_237" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_238" use="optional" order="47" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_238_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_TitleOfIndividualAxis_237" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_238_default" use="optional" order="48" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_502681" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_502681" use="optional" order="49" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_502682" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_502681" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_502682" use="optional" order="50" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_502682_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_502681" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_502682_default" use="optional" order="51" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_502684" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_FairValueByMeasurementFrequencyAxis_502684" use="optional" order="52" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_502685" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_502684" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_502685" use="optional" order="53" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_502685_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_502684" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_502685_default" use="optional" order="54" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_333057" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_333057" use="optional" order="55" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_499359" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_499359" use="optional" order="56" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_484" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_504" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_504" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_502" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_502" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_510" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_510" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_505" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_505" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_508" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_Goodwill_508" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed" xlink:label="loc_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed_511" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed_511" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue_464444" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue_464444" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets_465011" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets_465011" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:label="loc_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_467961" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_467961" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_468635" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_468635" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_483" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_483" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_482" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_483" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_482" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_482_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_483" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_482_default" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CTechnologiesMember" xlink:label="loc_rgen_CTechnologiesMember_464438" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_482" xlink:to="loc_rgen_CTechnologiesMember_464438" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_EngineeredMoldingTechnologyLlcMember" xlink:label="loc_rgen_EngineeredMoldingTechnologyLlcMember_758236" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_482" xlink:to="loc_rgen_EngineeredMoldingTechnologyLlcMember_758236" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContingentConsiderationByTypeAxis" xlink:label="loc_us-gaap_ContingentConsiderationByTypeAxis_485" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_ContingentConsiderationByTypeAxis_485" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContingentConsiderationTypeDomain" xlink:label="loc_us-gaap_ContingentConsiderationTypeDomain_486" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ContingentConsiderationByTypeAxis_485" xlink:to="loc_us-gaap_ContingentConsiderationTypeDomain_486" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContingentConsiderationTypeDomain" xlink:label="loc_us-gaap_ContingentConsiderationTypeDomain_486_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ContingentConsiderationByTypeAxis_485" xlink:to="loc_us-gaap_ContingentConsiderationTypeDomain_486_default" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_487" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_487" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_488" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_487" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_488" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_488_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_487" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_488_default" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_489" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_489" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_490" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_489" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_490" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_490_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_489" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_490_default" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_520" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_490" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_520" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByAssetClassAxis" xlink:label="loc_us-gaap_FairValueByAssetClassAxis_464441" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_FairValueByAssetClassAxis_464441" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_464442" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByAssetClassAxis_464441" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_464442" use="optional" order="28" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_464442_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByAssetClassAxis_464441" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_464442_default" use="optional" order="29" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillMember" xlink:label="loc_us-gaap_GoodwillMember_464443" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_464442" xlink:to="loc_us-gaap_GoodwillMember_464443" use="optional" order="30" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_464445" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_464445" use="optional" order="31" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_464446" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_464445" xlink:to="loc_us-gaap_TypeOfAdoptionMember_464446" use="optional" order="32" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_464446_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_464445" xlink:to="loc_us-gaap_TypeOfAdoptionMember_464446_default" use="optional" order="33" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonrecurringAdjustmentAxis" xlink:label="loc_us-gaap_NonrecurringAdjustmentAxis_467962" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_NonrecurringAdjustmentAxis_467962" use="optional" order="34" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonrecurringAdjustmentDomain" xlink:label="loc_us-gaap_NonrecurringAdjustmentDomain_467963" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_NonrecurringAdjustmentAxis_467962" xlink:to="loc_us-gaap_NonrecurringAdjustmentDomain_467963" use="optional" order="35" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonrecurringAdjustmentDomain" xlink:label="loc_us-gaap_NonrecurringAdjustmentDomain_467963_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_NonrecurringAdjustmentAxis_467962" xlink:to="loc_us-gaap_NonrecurringAdjustmentDomain_467963_default" use="optional" order="36" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_492" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_srt_RangeAxis_492" use="optional" order="37" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_493" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_492" xlink:to="loc_srt_RangeMember_493" use="optional" order="38" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_493_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_492" xlink:to="loc_srt_RangeMember_493_default" use="optional" order="39" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_680181" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_srt_TitleOfIndividualAxis_680181" use="optional" order="40" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_680182" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_TitleOfIndividualAxis_680181" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_680182" use="optional" order="41" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_680182_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_TitleOfIndividualAxis_680181" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_680182_default" use="optional" order="42" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TrustForBenefitOfEmployeesMember" xlink:label="loc_us-gaap_TrustForBenefitOfEmployeesMember_680183" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_680182" xlink:to="loc_us-gaap_TrustForBenefitOfEmployeesMember_680183" use="optional" order="43" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold" xlink:label="loc_us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold_681420" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold_681420" use="optional" order="44" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_681423" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_681423" use="optional" order="45" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_758237" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_758237" use="optional" order="46" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationConsiderationIndemnificationEscrow" xlink:label="loc_rgen_BusinessCombinationConsiderationIndemnificationEscrow_758239" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_rgen_BusinessCombinationConsiderationIndemnificationEscrow_758239" use="optional" order="47" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_545" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_553" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_553" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_558" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_558" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_554" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_554" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_566" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_566" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities_568" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities_568" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_560" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_560" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_562" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_562" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_556" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_556" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_559" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_559" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_565" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_565" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_564" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_Goodwill_564" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_549" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_549" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_544" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_549" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_544" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_543" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_544" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_543" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_543_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_544" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_543_default" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CTechnologiesMember" xlink:label="loc_rgen_CTechnologiesMember_464434" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_543" xlink:to="loc_rgen_CTechnologiesMember_464434" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_EngineeredMoldingTechnologyLlcMember" xlink:label="loc_rgen_EngineeredMoldingTechnologyLlcMember_758234" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_543" xlink:to="loc_rgen_EngineeredMoldingTechnologyLlcMember_758234" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_546" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_549" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_546" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_547" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_546" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_547" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_547_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_546" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_547_default" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_569" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_547" xlink:to="loc_us-gaap_CustomerRelationshipsMember_569" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember_570" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_547" xlink:to="loc_us-gaap_DevelopedTechnologyRightsMember_570" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_572" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_547" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_572" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_571" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_547" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_571" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_548" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_549" xlink:to="loc_dei_LegalEntityAxis_548" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_573" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_548" xlink:to="loc_dei_EntityDomain_573" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_573_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_548" xlink:to="loc_dei_EntityDomain_573_default" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash_464409" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash_464409" use="optional" order="28" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_464416" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_464416" use="optional" order="29" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent_464419" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent_464419" use="optional" order="30" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent_464423" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent_464423" use="optional" order="31" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent_464426" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent_464426" use="optional" order="32" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus_465040" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus_465040" use="optional" order="33" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_464414" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_464411" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_464414" xlink:to="loc_us-gaap_StatementTable_464411" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_464412" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_464411" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_464412" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_464413" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_464412" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_464413" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_464413_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_464412" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_464413_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_464420" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_464413" xlink:to="loc_us-gaap_CustomerRelationshipsMember_464420" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember_464421" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_464413" xlink:to="loc_us-gaap_DevelopedTechnologyRightsMember_464421" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="loc_us-gaap_TradeNamesMember_464422" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_464413" xlink:to="loc_us-gaap_TradeNamesMember_464422" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_464424" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_464413" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_464424" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_464415" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_464411" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_464415" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_464417" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_464415" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_464417" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_464417_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_464415" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_464417_default" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_EngineeredMoldingTechnologyLlcMember" xlink:label="loc_rgen_EngineeredMoldingTechnologyLlcMember_758235" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_464417" xlink:to="loc_rgen_EngineeredMoldingTechnologyLlcMember_758235" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_464425" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_464414" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_464425" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_464437" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_464414" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_464437" use="optional" order="14" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_578" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_585" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_578" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_585" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_586" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_578" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_586" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_584" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_578" xlink:to="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_584" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaRevenue" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_583" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_578" xlink:to="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_583" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_580" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_578" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_580" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_577" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_580" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_577" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_576" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_577" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_576" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_576_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_577" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_576_default" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CTechnologiesMember" xlink:label="loc_rgen_CTechnologiesMember_464406" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_576" xlink:to="loc_rgen_CTechnologiesMember_464406" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_579" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_580" xlink:to="loc_dei_LegalEntityAxis_579" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_587" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_579" xlink:to="loc_dei_EntityDomain_587" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_587_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_579" xlink:to="loc_dei_EntityDomain_587_default" use="optional" order="12" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_309978" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_309973" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_309978" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_309973" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_309974" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_309973" xlink:to="loc_srt_ProductOrServiceAxis_309974" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_309975" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_309974" xlink:to="loc_srt_ProductsAndServicesDomain_309975" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_309975_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_309974" xlink:to="loc_srt_ProductsAndServicesDomain_309975_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductMember" xlink:label="loc_us-gaap_ProductMember_309976" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_309975" xlink:to="loc_us-gaap_ProductMember_309976" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RoyaltyMember" xlink:label="loc_us-gaap_RoyaltyMember_309977" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_309975" xlink:to="loc_us-gaap_RoyaltyMember_309977" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_309980" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_309978" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_309980" use="optional" order="7" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/RevenueFromSignificantCustomersDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="loc_us-gaap_ConcentrationRiskLineItems_309969" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTable" xlink:label="loc_us-gaap_ConcentrationRiskTable_309959" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_309969" xlink:to="loc_us-gaap_ConcentrationRiskTable_309959" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_309961" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_309959" xlink:to="loc_srt_MajorCustomersAxis_309961" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_309962" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_309961" xlink:to="loc_srt_NameOfMajorCustomerDomain_309962" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_309962_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_309961" xlink:to="loc_srt_NameOfMajorCustomerDomain_309962_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_MilliporeSigmaMember" xlink:label="loc_rgen_MilliporeSigmaMember_309964" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_309962" xlink:to="loc_rgen_MilliporeSigmaMember_309964" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CytivaMember" xlink:label="loc_rgen_CytivaMember_309965" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_309962" xlink:to="loc_rgen_CytivaMember_309965" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_309970" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_309969" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_309970" use="optional" order="7" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_309941" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_309938" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_309941" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_309938" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_309939" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_309938" xlink:to="loc_dei_LegalEntityAxis_309939" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_309940" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_309939" xlink:to="loc_dei_EntityDomain_309940" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_309940_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_309939" xlink:to="loc_dei_EntityDomain_309940_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract_309942" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_309941" xlink:to="loc_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract_309942" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_309943" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract_309942" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_309943" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenue" xlink:label="loc_us-gaap_DeferredRevenue_309944" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract_309942" xlink:to="loc_us-gaap_DeferredRevenue_309944" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract" xlink:label="loc_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract_309946" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_309941" xlink:to="loc_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract_309946" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaap_ContractWithCustomerLiability_309947" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract_309946" xlink:to="loc_us-gaap_ContractWithCustomerLiability_309947" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod" xlink:label="loc_us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod_309948" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract_309946" xlink:to="loc_us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod_309948" use="optional" order="10" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillLineItems" xlink:label="loc_us-gaap_GoodwillLineItems_602" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_608" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_602" xlink:to="loc_us-gaap_Goodwill_608" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_610" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_602" xlink:to="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_610" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_604" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_GoodwillLineItems_602" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_604" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_601" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_604" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_601" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_600" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_601" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_600" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_600_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_601" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_600_default" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CTechnologiesMember" xlink:label="loc_rgen_CTechnologiesMember_680368" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_600" xlink:to="loc_rgen_CTechnologiesMember_680368" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_EngineeredMoldingTechnologyLlcMember" xlink:label="loc_rgen_EngineeredMoldingTechnologyLlcMember_758263" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_600" xlink:to="loc_rgen_EngineeredMoldingTechnologyLlcMember_758263" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_603" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_604" xlink:to="loc_dei_LegalEntityAxis_603" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_612" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_603" xlink:to="loc_dei_EntityDomain_612" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_612_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_603" xlink:to="loc_dei_EntityDomain_612_default" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_464405" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_602" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_464405" use="optional" order="12" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail">
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IntangibleAssetsLineItems" xlink:label="loc_rgen_IntangibleAssetsLineItems_455" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_465" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_465" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_464" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_464" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_466" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_466" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsGrossExcludingGoodwill_463" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_us-gaap_IntangibleAssetsGrossExcludingGoodwill_463" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfIntangibleAssetsTable" xlink:label="loc_rgen_ScheduleOfIntangibleAssetsTable_457" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_rgen_ScheduleOfIntangibleAssetsTable_457" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_451" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_ScheduleOfIntangibleAssetsTable_457" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_451" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_451" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_451" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452_default" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_460" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452" xlink:to="loc_us-gaap_CustomerRelationshipsMember_460" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember_458" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452" xlink:to="loc_us-gaap_DevelopedTechnologyRightsMember_458" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherIntangibleAssetsMember" xlink:label="loc_us-gaap_OtherIntangibleAssetsMember_461" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452" xlink:to="loc_us-gaap_OtherIntangibleAssetsMember_461" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PatentsMember" xlink:label="loc_us-gaap_PatentsMember_459" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452" xlink:to="loc_us-gaap_PatentsMember_459" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TrademarksMember" xlink:label="loc_us-gaap_TrademarksMember_462" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452" xlink:to="loc_us-gaap_TrademarksMember_462" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TrademarksMember" xlink:label="loc_us-gaap_TrademarksMember_328065" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_454" xlink:to="loc_us-gaap_TrademarksMember_328065" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_453" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_ScheduleOfIntangibleAssetsTable_457" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_453" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_454" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_453" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_454" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_454_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_453" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_454_default" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_456" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_ScheduleOfIntangibleAssetsTable_457" xlink:to="loc_dei_LegalEntityAxis_456" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_468" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_456" xlink:to="loc_dei_EntityDomain_468" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_468_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_456" xlink:to="loc_dei_EntityDomain_468_default" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization_310092" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization_310092" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_310094" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_310094" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_310095" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_310095" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_328051" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_328051" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IndefiniteLivedIntangibleAssetsNet" xlink:label="loc_rgen_IndefiniteLivedIntangibleAssetsNet_328054" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_rgen_IndefiniteLivedIntangibleAssetsNet_328054" use="optional" order="25" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:label="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_310112" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_310108" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_310112" xlink:to="loc_us-gaap_StatementTable_310108" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_310109" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_310108" xlink:to="loc_us-gaap_StatementClassOfStockAxis_310109" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_310110" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_310109" xlink:to="loc_us-gaap_ClassOfStockDomain_310110" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_310110_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_310109" xlink:to="loc_us-gaap_ClassOfStockDomain_310110_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_310113" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_310108" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_310113" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_310114" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_310113" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_310114" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_310114_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_310113" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_310114_default" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_330864" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_310108" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_330864" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_330865" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_330864" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_330865" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_330865_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_330864" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_330865_default" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_310118" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_310112" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_310118" use="optional" order="11" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail">
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:label="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_474" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_474" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_478" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_478" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_477" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_477" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_476" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_476" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_475" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_475" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_473" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_473" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_472" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_473" xlink:to="loc_dei_LegalEntityAxis_472" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_479" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_472" xlink:to="loc_dei_EntityDomain_479" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_479_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_472" xlink:to="loc_dei_EntityDomain_479_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_310100" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_310100" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_310101" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_310101" use="optional" order="11" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ScheduleOfInventoriesDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryLineItems" xlink:label="loc_us-gaap_InventoryLineItems_318" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryCurrentTable" xlink:label="loc_us-gaap_InventoryCurrentTable_317" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_InventoryLineItems_318" xlink:to="loc_us-gaap_InventoryCurrentTable_317" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_319" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_InventoryCurrentTable_317" xlink:to="loc_dei_LegalEntityAxis_319" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_324" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_319" xlink:to="loc_dei_EntityDomain_324" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_324_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_319" xlink:to="loc_dei_EntityDomain_324_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_322" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InventoryLineItems_318" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_322" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_323" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InventoryLineItems_318" xlink:to="loc_us-gaap_InventoryNet_323" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_320" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InventoryLineItems_318" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_320" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves_321" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InventoryLineItems_318" xlink:to="loc_us-gaap_InventoryWorkInProcessNetOfReserves_321" use="optional" order="8" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_989" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_989" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="loc_us-gaap_BuildingsAndImprovementsGross_983" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_BuildingsAndImprovementsGross_983" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConstructionInProgressGross" xlink:label="loc_us-gaap_ConstructionInProgressGross_987" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_ConstructionInProgressGross_987" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FurnitureAndFixturesGross" xlink:label="loc_us-gaap_FurnitureAndFixturesGross_986" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_FurnitureAndFixturesGross_986" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Land" xlink:label="loc_us-gaap_Land_982" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_Land_982" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseholdImprovementsGross" xlink:label="loc_us-gaap_LeaseholdImprovementsGross_984" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_LeaseholdImprovementsGross_984" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="loc_us-gaap_MachineryAndEquipmentGross_985" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_MachineryAndEquipmentGross_985" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_988" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_988" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_990" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_990" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_980" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_980" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_978" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_980" xlink:to="loc_dei_LegalEntityAxis_978" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_981" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_978" xlink:to="loc_dei_EntityDomain_981" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_981_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_978" xlink:to="loc_dei_EntityDomain_981_default" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentOther" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentOther_409979" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentOther_409979" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareGross_680381" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareGross_680381" use="optional" order="15" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_329196" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_329193" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_329196" xlink:to="loc_us-gaap_StatementTable_329193" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_FacilityAxis" xlink:label="loc_rgen_FacilityAxis_329197" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_329193" xlink:to="loc_rgen_FacilityAxis_329197" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_FacilityDomain" xlink:label="loc_rgen_FacilityDomain_329198" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_rgen_FacilityAxis_329197" xlink:to="loc_rgen_FacilityDomain_329198" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_FacilityDomain" xlink:label="loc_rgen_FacilityDomain_329198_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_rgen_FacilityAxis_329197" xlink:to="loc_rgen_FacilityDomain_329198_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_329200" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_329193" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_329200" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_329201" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_329200" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_329201" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_329201_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_329200" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_329201_default" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_502862" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_329193" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_502862" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_502864" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_502862" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_502864" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_502864_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_502862" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_502864_default" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RgenFacilityAxis" xlink:label="loc_rgen_RgenFacilityAxis_680386" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_329193" xlink:to="loc_rgen_RgenFacilityAxis_680386" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RgenFacilityDomain" xlink:label="loc_rgen_RgenFacilityDomain_680387" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_rgen_RgenFacilityAxis_680386" xlink:to="loc_rgen_RgenFacilityDomain_680387" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RgenFacilityDomain" xlink:label="loc_rgen_RgenFacilityDomain_680387_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_rgen_RgenFacilityAxis_680386" xlink:to="loc_rgen_RgenFacilityDomain_680387_default" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation_329206" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_329196" xlink:to="loc_us-gaap_Depreciation_329206" use="optional" order="14" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail">
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:label="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_1005" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_1005" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_1012" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_1012" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedProfessionalFeesCurrent" xlink:label="loc_us-gaap_AccruedProfessionalFeesCurrent_1009" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_AccruedProfessionalFeesCurrent_1009" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedRoyaltiesCurrent" xlink:label="loc_us-gaap_AccruedRoyaltiesCurrent_1006" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_AccruedRoyaltiesCurrent_1006" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="loc_us-gaap_DeferredRevenueCurrent_1010" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_DeferredRevenueCurrent_1010" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_1004" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_1004" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_1011" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_1011" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfAccruedLiabilitiesTable" xlink:label="loc_rgen_ScheduleOfAccruedLiabilitiesTable_1002" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_rgen_ScheduleOfAccruedLiabilitiesTable_1002" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1000" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesTable_1002" xlink:to="loc_dei_LegalEntityAxis_1000" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1003" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1000" xlink:to="loc_dei_EntityDomain_1003" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1003_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1000" xlink:to="loc_dei_EntityDomain_1003_default" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_310149" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_310149" use="optional" order="12" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="loc_us-gaap_DebtInstrumentLineItems_1040" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfDebtDiscountPremium" xlink:label="loc_us-gaap_AmortizationOfDebtDiscountPremium_1064" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_AmortizationOfDebtDiscountPremium_1064" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfFinancingCosts" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts_1065" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_AmortizationOfFinancingCosts_1065" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentConvertibleConversionPrice1" xlink:label="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_1058" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_1058" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentConvertibleConversionRatio1" xlink:label="loc_us-gaap_DebtInstrumentConvertibleConversionRatio1_1057" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentConvertibleConversionRatio1_1057" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_1046" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_1046" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFairValue" xlink:label="loc_us-gaap_DebtInstrumentFairValue_1062" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentFairValue_1062" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_1066" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_1066" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_1047" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_1047" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="loc_us-gaap_DebtInstrumentMaturityDate_1051" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentMaturityDate_1051" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentRedemptionPricePercentage" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPricePercentage_1059" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPricePercentage_1059" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentTable" xlink:label="loc_us-gaap_DebtInstrumentTable_1044" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentTable_1044" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_1039" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_1044" xlink:to="loc_us-gaap_DebtInstrumentAxis_1039" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_1041" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_1039" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_1041" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_1041_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_1039" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_1041_default" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember" xlink:label="loc_rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember_1069" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_1041" xlink:to="loc_rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember_1069" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="loc_rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember_499446" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_1041" xlink:to="loc_rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember_499446" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember" xlink:label="loc_rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember_502954" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_1041" xlink:to="loc_rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember_502954" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodAxis" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_1042" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_1044" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_1042" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodDomain" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_1043" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_1042" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_1043" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodDomain" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_1043_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_1042" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_1043_default" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_468841" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_1044" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_468841" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_468842" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_468841" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_468842" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_468842_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_468841" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_468842_default" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_499490" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_1044" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_499490" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_499491" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_499490" xlink:to="loc_us-gaap_EquityComponentDomain_499491" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_499491_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_499490" xlink:to="loc_us-gaap_EquityComponentDomain_499491_default" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_499493" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_499491" xlink:to="loc_us-gaap_CommonStockMember_499493" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestExpenseDebtExcludingAmortization" xlink:label="loc_us-gaap_InterestExpenseDebtExcludingAmortization_1063" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_InterestExpenseDebtExcludingAmortization_1063" use="optional" order="28" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaap_LongTermDebt_1067" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_LongTermDebt_1067" use="optional" order="29" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtFairValue" xlink:label="loc_us-gaap_LongTermDebtFairValue_1068" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_LongTermDebtFairValue_1068" use="optional" order="30" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromConvertibleDebt" xlink:label="loc_us-gaap_ProceedsFromConvertibleDebt_1048" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_ProceedsFromConvertibleDebt_1048" use="optional" order="31" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_OptionToPurchaseAdditionalDebtFaceAmount" xlink:label="loc_rgen_OptionToPurchaseAdditionalDebtFaceAmount_499447" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_rgen_OptionToPurchaseAdditionalDebtFaceAmount_499447" use="optional" order="32" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_DiscountRate" xlink:label="loc_rgen_DiscountRate_499453" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_rgen_DiscountRate_499453" use="optional" order="33" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature" xlink:label="loc_us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature_499454" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature_499454" use="optional" order="34" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent" xlink:label="loc_rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent_499455" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent_499455" use="optional" order="35" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ConvertibleNotesTransactionCostsOfEquityComponent" xlink:label="loc_rgen_ConvertibleNotesTransactionCostsOfEquityComponent_499456" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_rgen_ConvertibleNotesTransactionCostsOfEquityComponent_499456" use="optional" order="36" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarlyRepaymentOfSeniorDebt" xlink:label="loc_us-gaap_EarlyRepaymentOfSeniorDebt_499476" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_EarlyRepaymentOfSeniorDebt_499476" use="optional" order="37" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentIncreaseAccruedInterest" xlink:label="loc_us-gaap_DebtInstrumentIncreaseAccruedInterest_499477" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentIncreaseAccruedInterest_499477" use="optional" order="38" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_499479" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_499479" use="optional" order="39" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_499480" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_499480" use="optional" order="40" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentAmount1" xlink:label="loc_us-gaap_DebtConversionConvertedInstrumentAmount1_499482" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtConversionConvertedInstrumentAmount1_499482" use="optional" order="41" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent" xlink:label="loc_us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent_499484" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent_499484" use="optional" order="42" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_499486" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_499486" use="optional" order="43" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateTerms" xlink:label="loc_us-gaap_DebtInstrumentInterestRateTerms_500277" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentInterestRateTerms_500277" use="optional" order="44" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_DebtInstrumentFaceAmountRemaining" xlink:label="loc_rgen_DebtInstrumentFaceAmountRemaining_500283" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_rgen_DebtInstrumentFaceAmountRemaining_500283" use="optional" order="45" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_499543" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_499540" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_499543" xlink:to="loc_us-gaap_StatementTable_499540" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_499541" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_499540" xlink:to="loc_us-gaap_StatementClassOfStockAxis_499541" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_499542" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_499541" xlink:to="loc_us-gaap_ClassOfStockDomain_499542" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_499542_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_499541" xlink:to="loc_us-gaap_ClassOfStockDomain_499542_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount_499548" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_499543" xlink:to="loc_us-gaap_DebtInstrumentCarryingAmount_499548" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscount" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscount_499550" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_499543" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscount_499550" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="loc_us-gaap_DeferredFinanceCostsNet_499552" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_499543" xlink:to="loc_us-gaap_DeferredFinanceCostsNet_499552" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleNotesPayable" xlink:label="loc_us-gaap_ConvertibleNotesPayable_499554" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_499543" xlink:to="loc_us-gaap_ConvertibleNotesPayable_499554" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleLongTermNotesPayable" xlink:label="loc_us-gaap_ConvertibleLongTermNotesPayable_499555" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_499543" xlink:to="loc_us-gaap_ConvertibleLongTermNotesPayable_499555" use="optional" order="9" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_StockholdersEquityNoteDisclosureLineItems" xlink:label="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_785" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_785" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_786" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensation_786" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_788" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_788" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_787" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_787" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_797" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_797" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_798" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_798" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_791" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_791" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_799" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_799" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_789" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_789" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_792" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_792" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" xlink:label="loc_rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares_802" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares_802" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_794" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_794" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_795" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_795" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_790" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_790" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1_796" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1_796" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaap_SharePrice_793" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_SharePrice_793" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CommonStockIssuePricePerShare" xlink:label="loc_rgen_CommonStockIssuePricePerShare_783" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_rgen_CommonStockIssuePricePerShare_783" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_782" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_CommonStockSharesIssued_782" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_800" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_800" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_801" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_801" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_StockholdersEquityNoteDisclosureTable" xlink:label="loc_rgen_StockholdersEquityNoteDisclosureTable_768" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_762" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_dei_LegalEntityAxis_762" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_774" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_762" xlink:to="loc_dei_EntityDomain_774" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_774_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_762" xlink:to="loc_dei_EntityDomain_774_default" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_763" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_srt_RangeAxis_763" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_764" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_763" xlink:to="loc_srt_RangeMember_764" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_764_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_763" xlink:to="loc_srt_RangeMember_764_default" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_776" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_764" xlink:to="loc_srt_MaximumMember_776" use="optional" order="28" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_775" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_764" xlink:to="loc_srt_MinimumMember_775" use="optional" order="29" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_760" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_us-gaap_AwardTypeAxis_760" use="optional" order="30" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_765" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_760" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_765" use="optional" order="31" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_765_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_760" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_765_default" use="optional" order="32" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_777" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_765" xlink:to="loc_us-gaap_EmployeeStockOptionMember_777" use="optional" order="33" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_NonEmployeeDirectorStockOptionMember" xlink:label="loc_rgen_NonEmployeeDirectorStockOptionMember_778" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_765" xlink:to="loc_rgen_NonEmployeeDirectorStockOptionMember_778" use="optional" order="34" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_UnvestedOptionsMember" xlink:label="loc_rgen_UnvestedOptionsMember_781" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_765" xlink:to="loc_rgen_UnvestedOptionsMember_781" use="optional" order="35" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_681830" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_765" xlink:to="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_681830" use="optional" order="36" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_766" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_766" use="optional" order="37" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_761" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_766" xlink:to="loc_us-gaap_EquityComponentDomain_761" use="optional" order="38" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_761_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_766" xlink:to="loc_us-gaap_EquityComponentDomain_761_default" use="optional" order="39" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_773" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_761" xlink:to="loc_us-gaap_CommonStockMember_773" use="optional" order="40" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VestingAxis" xlink:label="loc_us-gaap_VestingAxis_771" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_us-gaap_VestingAxis_771" use="optional" order="41" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VestingDomain" xlink:label="loc_us-gaap_VestingDomain_772" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_VestingAxis_771" xlink:to="loc_us-gaap_VestingDomain_772" use="optional" order="42" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VestingDomain" xlink:label="loc_us-gaap_VestingDomain_772_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_VestingAxis_771" xlink:to="loc_us-gaap_VestingDomain_772_default" use="optional" order="43" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember_807" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VestingDomain_772" xlink:to="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember_807" use="optional" order="44" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaap_PlanNameAxis_310020" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_us-gaap_PlanNameAxis_310020" use="optional" order="45" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaap_PlanNameDomain_310022" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PlanNameAxis_310020" xlink:to="loc_us-gaap_PlanNameDomain_310022" use="optional" order="46" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaap_PlanNameDomain_310022_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PlanNameAxis_310020" xlink:to="loc_us-gaap_PlanNameDomain_310022_default" use="optional" order="47" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_StockOptionAndIncentivePlanMember" xlink:label="loc_rgen_StockOptionAndIncentivePlanMember_310025" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_310022" xlink:to="loc_rgen_StockOptionAndIncentivePlanMember_310025" use="optional" order="48" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_769" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_srt_TitleOfIndividualAxis_769" use="optional" order="49" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_770" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_TitleOfIndividualAxis_769" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_770" use="optional" order="50" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_770_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_TitleOfIndividualAxis_769" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_770_default" use="optional" order="51" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_UnderwriterMember" xlink:label="loc_rgen_UnderwriterMember_803" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_770" xlink:to="loc_rgen_UnderwriterMember_803" use="optional" order="52" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_784" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_784" use="optional" order="53" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="loc_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_310019" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_310019" use="optional" order="54" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_811" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_816" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_811" xlink:to="loc_us-gaap_ShareBasedCompensation_816" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_815" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_811" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_815" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_814" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_815" xlink:to="loc_dei_LegalEntityAxis_814" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_820" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_814" xlink:to="loc_dei_EntityDomain_820" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_820_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_814" xlink:to="loc_dei_EntityDomain_820_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_812" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_815" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_812" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_813" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_812" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_813" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_813_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_812" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_813_default" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember_817" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_813" xlink:to="loc_us-gaap_CostOfSalesMember_817" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_819" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_813" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_819" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_818" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_813" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_818" use="optional" order="11" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfOptionActivityDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_842" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_841" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_842" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_841" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_840" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_841" xlink:to="loc_dei_LegalEntityAxis_840" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_847" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_840" xlink:to="loc_dei_EntityDomain_847" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_847_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_840" xlink:to="loc_dei_EntityDomain_847_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_843" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_842" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_843" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_849" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_843" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_849" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_848" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_843" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_848" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_850" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_843" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_850" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:label="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_844" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_842" xlink:to="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_844" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_852" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_844" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_852" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_851" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_844" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_851" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_853" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_844" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_853" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_842" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_859" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_859" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_855" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_855" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_854" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_854" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_860" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_860" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_856" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_856" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_846" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_842" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_846" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_866" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_846" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_866" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_861" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_846" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_861" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_863" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_846" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_863" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_862" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_846" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_862" use="optional" order="23" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_873" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_PercentageOfSharesSubjectToForfeiture" xlink:label="loc_rgen_PercentageOfSharesSubjectToForfeiture_878" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_873" xlink:to="loc_rgen_PercentageOfSharesSubjectToForfeiture_878" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_872" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_873" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_872" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_870" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_872" xlink:to="loc_us-gaap_AwardTypeAxis_870" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_874" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_870" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_874" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_874_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_870" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_874_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_879" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_874" xlink:to="loc_us-gaap_EmployeeStockOptionMember_879" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_871" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_872" xlink:to="loc_dei_LegalEntityAxis_871" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_877" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_871" xlink:to="loc_dei_EntityDomain_877" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_877_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_871" xlink:to="loc_dei_EntityDomain_877_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_875" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_872" xlink:to="loc_srt_TitleOfIndividualAxis_875" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_876" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_TitleOfIndividualAxis_875" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_876" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_876_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_TitleOfIndividualAxis_875" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_876_default" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_NonExecutiveMember" xlink:label="loc_rgen_NonExecutiveMember_880" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_876" xlink:to="loc_rgen_NonExecutiveMember_880" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ExecutiveOfficerMember" xlink:label="loc_srt_ExecutiveOfficerMember_881" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_876" xlink:to="loc_srt_ExecutiveOfficerMember_881" use="optional" order="14" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_890" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_886" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_890" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_886" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_884" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_886" xlink:to="loc_us-gaap_AwardTypeAxis_884" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_891" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_884" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_891" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_891_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_884" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_891_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_903" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_891" xlink:to="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_903" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_887" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_890" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_887" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_893" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_887" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_893" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm" xlink:label="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm_894" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_887" xlink:to="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm_894" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_888" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_890" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_888" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_895" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_888" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_895" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_896" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_888" xlink:to="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_896" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_889" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_890" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_889" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_900" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_889" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_900" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_898" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_889" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_898" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_897" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_889" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_897" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_899" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_889" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_899" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" xlink:label="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber_902" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_890" xlink:to="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber_902" use="optional" order="17" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_909" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_PercentageOfSharesSubjectToForfeiture" xlink:label="loc_rgen_PercentageOfSharesSubjectToForfeiture_914" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_909" xlink:to="loc_rgen_PercentageOfSharesSubjectToForfeiture_914" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_908" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_909" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_908" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_906" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_908" xlink:to="loc_us-gaap_AwardTypeAxis_906" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_910" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_906" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_910" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_910_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_906" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_910_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_681837" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_910" xlink:to="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_681837" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_907" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_908" xlink:to="loc_dei_LegalEntityAxis_907" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_913" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_907" xlink:to="loc_dei_EntityDomain_913" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_913_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_907" xlink:to="loc_dei_EntityDomain_913_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_911" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_908" xlink:to="loc_srt_TitleOfIndividualAxis_911" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_912" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_TitleOfIndividualAxis_911" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_912" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_912_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_TitleOfIndividualAxis_911" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_912_default" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_NonExecutiveMember" xlink:label="loc_rgen_NonExecutiveMember_916" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_912" xlink:to="loc_rgen_NonExecutiveMember_916" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ExecutiveOfficerMember" xlink:label="loc_srt_ExecutiveOfficerMember_917" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_912" xlink:to="loc_srt_ExecutiveOfficerMember_917" use="optional" order="14" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CommitmentsAndContingenciesLineItems" xlink:label="loc_rgen_CommitmentsAndContingenciesLineItems_922" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CommitmentsAndContingenciesTable" xlink:label="loc_rgen_CommitmentsAndContingenciesTable_923" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_rgen_CommitmentsAndContingenciesLineItems_922" xlink:to="loc_rgen_CommitmentsAndContingenciesTable_923" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_AmendmentAxis" xlink:label="loc_rgen_AmendmentAxis_920" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_rgen_AmendmentAxis_920" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_AmendmentDomain" xlink:label="loc_rgen_AmendmentDomain_921" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_rgen_AmendmentAxis_920" xlink:to="loc_rgen_AmendmentDomain_921" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_AmendmentDomain" xlink:label="loc_rgen_AmendmentDomain_921_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_rgen_AmendmentAxis_920" xlink:to="loc_rgen_AmendmentDomain_921_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_924" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_924" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_925" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_924" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_925" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_925_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_924" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_925_default" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_926" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_dei_LegalEntityAxis_926" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_950" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_926" xlink:to="loc_dei_EntityDomain_950" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_950_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_926" xlink:to="loc_dei_EntityDomain_950_default" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_309791" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_309791" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_309794" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_309791" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_309794" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_309794_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_309791" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_309794_default" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_329274" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_srt_ProductOrServiceAxis_329274" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_329275" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_329274" xlink:to="loc_srt_ProductsAndServicesDomain_329275" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_329275_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_329274" xlink:to="loc_srt_ProductsAndServicesDomain_329275_default" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_NGLImpactAMember" xlink:label="loc_rgen_NGLImpactAMember_329276" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_329275" xlink:to="loc_rgen_NGLImpactAMember_329276" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis_329277" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis_329277" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_329278" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis_329277" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_329278" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_329278_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis_329277" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_329278_default" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentArrangementMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentArrangementMember_329279" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_329278" xlink:to="loc_us-gaap_ResearchAndDevelopmentArrangementMember_329279" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_329283" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_srt_RangeAxis_329283" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_329284" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_329283" xlink:to="loc_srt_RangeMember_329284" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_329284_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_329283" xlink:to="loc_srt_RangeMember_329284_default" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_421675" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_421675" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_421677" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_421675" xlink:to="loc_us-gaap_TypeOfAdoptionMember_421677" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_421677_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_421675" xlink:to="loc_us-gaap_TypeOfAdoptionMember_421677_default" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermPurchaseCommitmentAmount" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentAmount_329272" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_CommitmentsAndContingenciesLineItems_922" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentAmount_329272" use="optional" order="28" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1074" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_1075" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1074" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_1075" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1077" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_1075" xlink:to="loc_dei_LegalEntityAxis_1077" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1085" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1077" xlink:to="loc_dei_EntityDomain_1085" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1085_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1077" xlink:to="loc_dei_EntityDomain_1085_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_1078" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_1075" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_1078" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_1076" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_1078" xlink:to="loc_us-gaap_EquityComponentDomain_1076" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_1076_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_1078" xlink:to="loc_us-gaap_EquityComponentDomain_1076_default" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="loc_us-gaap_AccumulatedTranslationAdjustmentMember_1084" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_1076" xlink:to="loc_us-gaap_AccumulatedTranslationAdjustmentMember_1084" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_1080" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1074" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_1080" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_1079" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1074" xlink:to="loc_us-gaap_StockholdersEquity_1079" use="optional" order="10" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IncomeTaxesLineItems" xlink:label="loc_rgen_IncomeTaxesLineItems_647" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_667" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_IncomeTaxesLineItems_647" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_667" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IncomeTaxesTable" xlink:label="loc_rgen_IncomeTaxesTable_648" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_rgen_IncomeTaxesLineItems_647" xlink:to="loc_rgen_IncomeTaxesTable_648" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_644" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_644" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_643" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_644" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_643" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_643_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_644" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_643_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_645" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_645" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_646" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_645" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_646" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_646_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_645" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_646_default" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_649" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_dei_LegalEntityAxis_649" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_670" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_649" xlink:to="loc_dei_EntityDomain_670" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_670_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_649" xlink:to="loc_dei_EntityDomain_670_default" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_652" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_srt_StatementGeographicalAxis_652" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_651" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_652" xlink:to="loc_srt_SegmentGeographicalDomain_651" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_651_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_652" xlink:to="loc_srt_SegmentGeographicalDomain_651_default" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxPeriodAxis" xlink:label="loc_us-gaap_TaxPeriodAxis_654" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_us-gaap_TaxPeriodAxis_654" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxPeriodDomain" xlink:label="loc_us-gaap_TaxPeriodDomain_655" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_TaxPeriodAxis_654" xlink:to="loc_us-gaap_TaxPeriodDomain_655" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxPeriodDomain" xlink:label="loc_us-gaap_TaxPeriodDomain_655_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_TaxPeriodAxis_654" xlink:to="loc_us-gaap_TaxPeriodDomain_655_default" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_329225" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_329225" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_329226" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_329225" xlink:to="loc_us-gaap_TypeOfAdoptionMember_329226" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_329226_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_329225" xlink:to="loc_us-gaap_TypeOfAdoptionMember_329226_default" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_329228" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_329228" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_329229" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_329228" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_329229" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_329229_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_329228" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_329229_default" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_412008" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_IncomeTaxesLineItems_647" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_412008" use="optional" order="24" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExaminationLineItems" xlink:label="loc_us-gaap_IncomeTaxExaminationLineItems_732" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExaminationTable" xlink:label="loc_us-gaap_IncomeTaxExaminationTable_733" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_IncomeTaxExaminationLineItems_732" xlink:to="loc_us-gaap_IncomeTaxExaminationTable_733" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_734" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeTaxExaminationTable_733" xlink:to="loc_dei_LegalEntityAxis_734" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_740" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_734" xlink:to="loc_dei_EntityDomain_740" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_740_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_734" xlink:to="loc_dei_EntityDomain_740_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_736" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeTaxExaminationTable_733" xlink:to="loc_srt_StatementGeographicalAxis_736" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_735" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_736" xlink:to="loc_srt_SegmentGeographicalDomain_735" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_735_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_736" xlink:to="loc_srt_SegmentGeographicalDomain_735_default" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_DE" xlink:label="loc_country_DE_743" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_735" xlink:to="loc_country_DE_743" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_NL" xlink:label="loc_country_NL_744" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_735" xlink:to="loc_country_NL_744" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_SE" xlink:label="loc_country_SE_742" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_735" xlink:to="loc_country_SE_742" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_US" xlink:label="loc_country_US_741" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_735" xlink:to="loc_country_US_741" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxPeriodAxis" xlink:label="loc_us-gaap_TaxPeriodAxis_737" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeTaxExaminationTable_733" xlink:to="loc_us-gaap_TaxPeriodAxis_737" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxPeriodDomain" xlink:label="loc_us-gaap_TaxPeriodDomain_738" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_TaxPeriodAxis_737" xlink:to="loc_us-gaap_TaxPeriodDomain_738" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxPeriodDomain" xlink:label="loc_us-gaap_TaxPeriodDomain_738_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_TaxPeriodAxis_737" xlink:to="loc_us-gaap_TaxPeriodDomain_738_default" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarliestTaxYearMember" xlink:label="loc_us-gaap_EarliestTaxYearMember_745" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TaxPeriodDomain_738" xlink:to="loc_us-gaap_EarliestTaxYearMember_745" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LatestTaxYearMember" xlink:label="loc_us-gaap_LatestTaxYearMember_746" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TaxPeriodDomain_738" xlink:to="loc_us-gaap_LatestTaxYearMember_746" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OpenTaxYear" xlink:label="loc_us-gaap_OpenTaxYear_327901" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxExaminationLineItems_732" xlink:to="loc_us-gaap_OpenTaxYear_327901" use="optional" order="17" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_410023" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_410020" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_410023" xlink:to="loc_us-gaap_StatementTable_410020" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_410021" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_410020" xlink:to="loc_us-gaap_StatementClassOfStockAxis_410021" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_410022" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_410021" xlink:to="loc_us-gaap_ClassOfStockDomain_410022" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_410022_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_410021" xlink:to="loc_us-gaap_ClassOfStockDomain_410022_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_410033" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_410020" xlink:to="loc_us-gaap_AwardTypeAxis_410033" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_410034" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_410033" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_410034" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_410034_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_410033" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_410034_default" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_681854" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_410034" xlink:to="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_681854" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_502999" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_410020" xlink:to="loc_us-gaap_DebtInstrumentAxis_502999" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_503000" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_502999" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_503000" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_503000_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_502999" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_503000_default" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember" xlink:label="loc_rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember_503001" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_503000" xlink:to="loc_rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember_503001" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="loc_rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember_503019" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_503000" xlink:to="loc_rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember_503019" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_503006" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_410020" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_503006" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_503007" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_503006" xlink:to="loc_us-gaap_EquityComponentDomain_503007" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_503007_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_503006" xlink:to="loc_us-gaap_EquityComponentDomain_503007_default" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_503008" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_503007" xlink:to="loc_us-gaap_CommonStockMember_503008" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_410032" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_410023" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_410032" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_410048" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_410023" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_410048" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_410051" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_410023" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_410051" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_410053" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_410023" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_410053" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_503002" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_410023" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_503002" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_503014" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_410023" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_503014" use="optional" order="23" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail">
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:label="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_348" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_354" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_348" xlink:to="loc_us-gaap_NetIncomeLoss_354" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" xlink:label="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable_349" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_348" xlink:to="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable_349" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_346" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable_349" xlink:to="loc_dei_LegalEntityAxis_346" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_353" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_346" xlink:to="loc_dei_EntityDomain_353" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_353_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_346" xlink:to="loc_dei_EntityDomain_353_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_357" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_348" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_357" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DilutiveSecuritiesAbstract" xlink:label="loc_us-gaap_DilutiveSecuritiesAbstract_309949" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_348" xlink:to="loc_us-gaap_DilutiveSecuritiesAbstract_309949" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesRestrictedStock" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesRestrictedStock_309950" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DilutiveSecuritiesAbstract_309949" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesRestrictedStock_309950" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities_309951" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DilutiveSecuritiesAbstract_309949" xlink:to="loc_us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities_309951" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_309952" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DilutiveSecuritiesAbstract_309949" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_309952" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_309953" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DilutiveSecuritiesAbstract_309949" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_309953" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:label="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_330225" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_348" xlink:to="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_330225" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic_309960" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_330225" xlink:to="loc_us-gaap_EarningsPerShareBasic_309960" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_309968" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_330225" xlink:to="loc_us-gaap_EarningsPerShareDiluted_309968" use="optional" order="14" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="loc_us-gaap_RelatedPartyTransactionLineItems_1112" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="loc_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners_1121" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_1112" xlink:to="loc_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners_1121" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfRelatedPartyTable" xlink:label="loc_rgen_ScheduleOfRelatedPartyTable_1114" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_1112" xlink:to="loc_rgen_ScheduleOfRelatedPartyTable_1114" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1108" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_dei_LegalEntityAxis_1108" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1117" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_1108" xlink:to="loc_dei_EntityDomain_1117" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1117_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_1108" xlink:to="loc_dei_EntityDomain_1117_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_1109" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_srt_RangeAxis_1109" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_1110" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_1109" xlink:to="loc_srt_RangeMember_1110" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_1110_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_1109" xlink:to="loc_srt_RangeMember_1110_default" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_1118" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_1110" xlink:to="loc_srt_MinimumMember_1118" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_1113" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_1113" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaap_RelatedPartyDomain_1111" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_1113" xlink:to="loc_us-gaap_RelatedPartyDomain_1111" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaap_RelatedPartyDomain_1111_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_1113" xlink:to="loc_us-gaap_RelatedPartyDomain_1111_default" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrincipalOwnerMember" xlink:label="loc_us-gaap_PrincipalOwnerMember_1119" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyDomain_1111" xlink:to="loc_us-gaap_PrincipalOwnerMember_1119" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_309716" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_309716" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_309717" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_309716" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_309717" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_309717_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_309716" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_309717_default" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_SpectrumIncMember" xlink:label="loc_rgen_SpectrumIncMember_309719" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_309717" xlink:to="loc_rgen_SpectrumIncMember_309719" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_SpectrumIncMember" xlink:label="loc_rgen_SpectrumIncMember_499360" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_OwnershipDomain_327968" xlink:to="loc_rgen_SpectrumIncMember_499360" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipAxis" xlink:label="loc_srt_OwnershipAxis_327967" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_srt_OwnershipAxis_327967" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srt_OwnershipDomain_327968" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_OwnershipAxis_327967" xlink:to="loc_srt_OwnershipDomain_327968" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srt_OwnershipDomain_327968_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_OwnershipAxis_327967" xlink:to="loc_srt_OwnershipDomain_327968_default" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_1115" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_srt_TitleOfIndividualAxis_1115" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_1116" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_TitleOfIndividualAxis_1115" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_1116" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_1116_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_TitleOfIndividualAxis_1115" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_1116_default" use="optional" order="24" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_469079" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_469079" use="optional" order="25" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_469080" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_469079" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_469080" use="optional" order="26" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_469080_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_469079" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_469080_default" use="optional" order="27" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesRentExpenseNet" xlink:label="loc_us-gaap_OperatingLeasesRentExpenseNet_681857" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_1112" xlink:to="loc_us-gaap_OperatingLeasesRentExpenseNet_681857" use="optional" order="28" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_681399" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="loc_us-gaap_NumberOfOperatingSegments_500125" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_681399" xlink:to="loc_us-gaap_NumberOfOperatingSegments_500125" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfProductInformationTable" xlink:label="loc_us-gaap_ScheduleOfProductInformationTable_681395" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_681399" xlink:to="loc_us-gaap_ScheduleOfProductInformationTable_681395" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_681396" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfProductInformationTable_681395" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_681396" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_681397" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_681396" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_681397" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_681397_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_681396" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_681397_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_681398" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_681397" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_681398" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_681858" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfProductInformationTable_681395" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_681858" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_681859" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_681858" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_681859" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_681859_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_681858" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_681859_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="loc_us-gaap_AccountsReceivableMember_681860" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_681859" xlink:to="loc_us-gaap_AccountsReceivableMember_681860" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_681861" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfProductInformationTable_681395" xlink:to="loc_srt_MajorCustomersAxis_681861" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_681862" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_681861" xlink:to="loc_srt_NameOfMajorCustomerDomain_681862" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_681862_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_681861" xlink:to="loc_srt_NameOfMajorCustomerDomain_681862_default" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CytivaMember" xlink:label="loc_rgen_CytivaMember_681863" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_681862" xlink:to="loc_rgen_CytivaMember_681863" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_681400" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_681399" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_681400" use="optional" order="15" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="loc_us-gaap_ConcentrationRiskLineItems_377" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_384" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_377" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_384" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTable" xlink:label="loc_us-gaap_ConcentrationRiskTable_378" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_377" xlink:to="loc_us-gaap_ConcentrationRiskTable_378" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_375" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_378" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_375" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_374" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_375" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_374" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_374_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_375" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_374_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_383" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_374" xlink:to="loc_us-gaap_SalesRevenueNetMember_383" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_376" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_378" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_376" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_379" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_376" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_379" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_379_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_376" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_379_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="loc_us-gaap_GeographicConcentrationRiskMember_385" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_379" xlink:to="loc_us-gaap_GeographicConcentrationRiskMember_385" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_382" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_378" xlink:to="loc_srt_StatementGeographicalAxis_382" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_381" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_382" xlink:to="loc_srt_SegmentGeographicalDomain_381" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_381_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_382" xlink:to="loc_srt_SegmentGeographicalDomain_381_default" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NorthAmericaMember" xlink:label="loc_srt_NorthAmericaMember_329156" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_381" xlink:to="loc_srt_NorthAmericaMember_329156" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_EuropeMember" xlink:label="loc_srt_EuropeMember_329157" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_381" xlink:to="loc_srt_EuropeMember_329157" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ApacOtherMember" xlink:label="loc_rgen_ApacOtherMember_329158" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_381" xlink:to="loc_rgen_ApacOtherMember_329158" use="optional" order="16" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EntityWideRevenueMajorCustomerLineItems" xlink:label="loc_us-gaap_EntityWideRevenueMajorCustomerLineItems_421" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_428" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EntityWideRevenueMajorCustomerLineItems_421" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_428" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xlink:label="loc_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable_425" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EntityWideRevenueMajorCustomerLineItems_421" xlink:to="loc_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable_425" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_418" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable_425" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_418" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_417" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_418" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_417" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_417_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_418" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_417_default" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_426" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_417" xlink:to="loc_us-gaap_SalesRevenueNetMember_426" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_419" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable_425" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_419" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_420" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_419" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_420" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_420_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_419" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_420_default" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_427" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_420" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_427" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_423" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable_425" xlink:to="loc_srt_MajorCustomersAxis_423" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_424" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_423" xlink:to="loc_srt_NameOfMajorCustomerDomain_424" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_424_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_423" xlink:to="loc_srt_NameOfMajorCustomerDomain_424_default" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CytivaMember" xlink:label="loc_rgen_CytivaMember_430" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_424" xlink:to="loc_rgen_CytivaMember_430" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_MilliporeSigmaMember" xlink:label="loc_rgen_MilliporeSigmaMember_431" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_424" xlink:to="loc_rgen_MilliporeSigmaMember_431" use="optional" order="15" />
</definitionLink>
<definitionLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_419230" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_419227" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_419230" xlink:to="loc_us-gaap_StatementTable_419227" xbrldt:contextElement="segment" xbrldt:closed="true" use="optional" order="1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_419425" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_419227" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_419425" use="optional" order="2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_419427" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_419425" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_419427" use="optional" order="3" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_419427_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_419425" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_419427_default" use="optional" order="4" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ArtesynBiosolutionsMember" xlink:label="loc_rgen_ArtesynBiosolutionsMember_764308" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_419427" xlink:to="loc_rgen_ArtesynBiosolutionsMember_764308" use="optional" order="5" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_419433" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_419227" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_419433" use="optional" order="6" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_419435" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_419433" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_419435" use="optional" order="7" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_419435_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_419433" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_419435_default" use="optional" order="8" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventMember" xlink:label="loc_us-gaap_SubsequentEventMember_419436" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_419435" xlink:to="loc_us-gaap_SubsequentEventMember_419436" use="optional" order="9" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_464333" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_419227" xlink:to="loc_us-gaap_DebtInstrumentAxis_464333" use="optional" order="10" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_464334" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_464333" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_464334" use="optional" order="11" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_464334_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_464333" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_464334_default" use="optional" order="12" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtConversionByUniqueDescriptionAxis" xlink:label="loc_us-gaap_DebtConversionByUniqueDescriptionAxis_464352" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_419227" xlink:to="loc_us-gaap_DebtConversionByUniqueDescriptionAxis_464352" use="optional" order="13" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtConversionNameDomain" xlink:label="loc_us-gaap_DebtConversionNameDomain_464353" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtConversionByUniqueDescriptionAxis_464352" xlink:to="loc_us-gaap_DebtConversionNameDomain_464353" use="optional" order="14" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtConversionNameDomain" xlink:label="loc_us-gaap_DebtConversionNameDomain_464353_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtConversionByUniqueDescriptionAxis_464352" xlink:to="loc_us-gaap_DebtConversionNameDomain_464353_default" use="optional" order="15" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_465029" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_419227" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_465029" use="optional" order="16" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_465030" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_465029" xlink:to="loc_us-gaap_EquityComponentDomain_465030" use="optional" order="17" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_465030_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_465029" xlink:to="loc_us-gaap_EquityComponentDomain_465030_default" use="optional" order="18" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_421552" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_419227" xlink:to="loc_srt_TitleOfIndividualAxis_421552" use="optional" order="19" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_421553" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_TitleOfIndividualAxis_421552" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_421553" use="optional" order="20" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_421553_default" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_TitleOfIndividualAxis_421552" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_421553_default" use="optional" order="21" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_419405" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_419230" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_419405" use="optional" order="22" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable_419409" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_419230" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable_419409" use="optional" order="23" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_419410" />
<definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_419230" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_419410" use="optional" order="24" />
</definitionLink>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>8
<FILENAME>rgen-20200930_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by DFIN XBRL Instance Document - http://www.dfinsolutions.com/ - Version R3.0 - on 04-November-2020 [01:20:39] {PM}-->
<linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" roleURI="http://www.xbrl.org/2009/role/negatedLabel" />
<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" />
<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" />
<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" />
<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" />
<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" />
<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" roleURI="http://www.xbrl.org/2009/role/netLabel" />
<labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CoverAbstract" xlink:label="loc_dei_CoverAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_CoverAbstract" xml:lang="en-US">Cover [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CoverAbstract" xlink:to="lab_dei_CoverAbstract" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_AmendmentFlag" xlink:label="loc_dei_AmendmentFlag" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_AmendmentFlag" xml:lang="en-US">Amendment Flag</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag" xlink:to="lab_dei_AmendmentFlag" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_dei_DocumentFiscalYearFocus" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_DocumentFiscalYearFocus" xml:lang="en-US">Document Fiscal Year Focus</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalYearFocus" xlink:to="lab_dei_DocumentFiscalYearFocus" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_dei_DocumentFiscalPeriodFocus" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xml:lang="en-US">Document Fiscal Period Focus</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalPeriodFocus" xlink:to="lab_dei_DocumentFiscalPeriodFocus" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCentralIndexKey" xlink:label="loc_dei_EntityCentralIndexKey" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityCentralIndexKey" xml:lang="en-US">Entity Central Index Key</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey" xlink:to="lab_dei_EntityCentralIndexKey" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_dei_CurrentFiscalYearEndDate" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_CurrentFiscalYearEndDate" xml:lang="en-US">Current Fiscal Year End Date</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CurrentFiscalYearEndDate" xlink:to="lab_dei_CurrentFiscalYearEndDate" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_DocumentPeriodEndDate" xml:lang="en-US">Document Period End Date</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentPeriodEndDate" xlink:to="lab_dei_DocumentPeriodEndDate" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentType" xlink:label="loc_dei_DocumentType" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_DocumentType" xml:lang="en-US">Document Type</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType" xlink:to="lab_dei_DocumentType" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_dei_EntityCurrentReportingStatus" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityCurrentReportingStatus" xml:lang="en-US">Entity Current Reporting Status</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCurrentReportingStatus" xlink:to="lab_dei_EntityCurrentReportingStatus" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityRegistrantName" xlink:label="loc_dei_EntityRegistrantName" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityRegistrantName" xml:lang="en-US">Entity Registrant Name</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName" xlink:to="lab_dei_EntityRegistrantName" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_dei_EntityInteractiveDataCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityInteractiveDataCurrent" xml:lang="en-US">Entity Interactive Data Current</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityInteractiveDataCurrent" xlink:to="lab_dei_EntityInteractiveDataCurrent" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_dei_EntityCommonStockSharesOutstanding" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xml:lang="en-US">Entity Common Stock, Shares Outstanding</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCommonStockSharesOutstanding" xlink:to="lab_dei_EntityCommonStockSharesOutstanding" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_Security12bTitle" xlink:label="loc_dei_Security12bTitle" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_Security12bTitle" xml:lang="en-US">Title of 12(b) Security</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_Security12bTitle" xlink:to="lab_dei_Security12bTitle" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_TradingSymbol" xlink:label="loc_dei_TradingSymbol" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_TradingSymbol" xml:lang="en-US">Trading Symbol</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_TradingSymbol" xlink:to="lab_dei_TradingSymbol" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_SecurityExchangeName" xlink:label="loc_dei_SecurityExchangeName" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_SecurityExchangeName" xml:lang="en-US">Security Exchange Name</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_SecurityExchangeName" xlink:to="lab_dei_SecurityExchangeName" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_dei_EntityIncorporationStateCountryCode" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xml:lang="en-US">Entity Incorporation, State or Country Code</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityIncorporationStateCountryCode" xlink:to="lab_dei_EntityIncorporationStateCountryCode" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_dei_EntityTaxIdentificationNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityTaxIdentificationNumber" xml:lang="en-US">Entity Tax Identification Number</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityTaxIdentificationNumber" xlink:to="lab_dei_EntityTaxIdentificationNumber" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_dei_EntityAddressAddressLine1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityAddressAddressLine1" xml:lang="en-US">Entity Address, Address Line One</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine1" xlink:to="lab_dei_EntityAddressAddressLine1" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_dei_EntityAddressCityOrTown" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityAddressCityOrTown" xml:lang="en-US">Entity Address, City or Town</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressCityOrTown" xlink:to="lab_dei_EntityAddressCityOrTown" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_dei_EntityAddressStateOrProvince" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityAddressStateOrProvince" xml:lang="en-US">Entity Address, State or Province</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressStateOrProvince" xlink:to="lab_dei_EntityAddressStateOrProvince" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_dei_EntityAddressPostalZipCode" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityAddressPostalZipCode" xml:lang="en-US">Entity Address, Postal Zip Code</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressPostalZipCode" xlink:to="lab_dei_EntityAddressPostalZipCode" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CityAreaCode" xlink:label="loc_dei_CityAreaCode" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_CityAreaCode" xml:lang="en-US">City Area Code</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CityAreaCode" xlink:to="lab_dei_CityAreaCode" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityShellCompany" xlink:label="loc_dei_EntityShellCompany" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityShellCompany" xml:lang="en-US">Entity Shell Company</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityShellCompany" xlink:to="lab_dei_EntityShellCompany" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntitySmallBusiness" xlink:label="loc_dei_EntitySmallBusiness" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntitySmallBusiness" xml:lang="en-US">Entity Small Business</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_dei_EntitySmallBusiness" xml:lang="en-US">Smaller reporting company</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntitySmallBusiness" xlink:to="lab_dei_EntitySmallBusiness" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_dei_EntityEmergingGrowthCompany" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityEmergingGrowthCompany" xml:lang="en-US">Entity Emerging Growth Company</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_dei_EntityEmergingGrowthCompany" xml:lang="en-US">Emerging growth company</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityEmergingGrowthCompany" xlink:to="lab_dei_EntityEmergingGrowthCompany" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LocalPhoneNumber" xlink:label="loc_dei_LocalPhoneNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_LocalPhoneNumber" xml:lang="en-US">Local Phone Number</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LocalPhoneNumber" xlink:to="lab_dei_LocalPhoneNumber" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentQuarterlyReport" xlink:label="loc_dei_DocumentQuarterlyReport" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_DocumentQuarterlyReport" xml:lang="en-US">Document Quarterly Report</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentQuarterlyReport" xlink:to="lab_dei_DocumentQuarterlyReport" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentTransitionReport" xlink:label="loc_dei_DocumentTransitionReport" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_DocumentTransitionReport" xml:lang="en-US">Document Transition Report</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentTransitionReport" xlink:to="lab_dei_DocumentTransitionReport" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFilerCategory" xlink:label="loc_dei_EntityFilerCategory" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityFilerCategory" xml:lang="en-US">Entity Filer Category</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFilerCategory" xlink:to="lab_dei_EntityFilerCategory" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFileNumber" xlink:label="loc_dei_EntityFileNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityFileNumber" xml:lang="en-US">Entity File Number</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFileNumber" xlink:to="lab_dei_EntityFileNumber" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xml:lang="en-US">Statement of Financial Position [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:to="lab_us-gaap_StatementOfFinancialPositionAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementTable" xml:lang="en-US">Statement [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StatementTable" xml:lang="en-US">Statement [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementTable" xlink:to="lab_us-gaap_StatementTable" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_LegalEntityAxis" xml:lang="en-US">Legal Entity [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_dei_LegalEntityAxis" xml:lang="en-US">Legal Entity [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LegalEntityAxis" xlink:to="lab_dei_LegalEntityAxis" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_dei_EntityDomain" xml:lang="en-US">Entity [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_dei_EntityDomain" xml:lang="en-US">Entity [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityDomain" xlink:to="lab_dei_EntityDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementLineItems" xml:lang="en-US">Statement [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StatementLineItems" xml:lang="en-US">Statement [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementLineItems" xlink:to="lab_us-gaap_StatementLineItems" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaap_AssetsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AssetsAbstract" xml:lang="en-US">Assets [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AssetsAbstract" xml:lang="en-US">Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsAbstract" xlink:to="lab_us-gaap_AssetsAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_Assets" xml:lang="en-US">Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_Assets" xml:lang="en-US">Total assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Assets" xlink:to="lab_us-gaap_Assets" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaap_AssetsCurrentAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xml:lang="en-US">Assets, Current [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xml:lang="en-US">Current assets:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrentAbstract" xlink:to="lab_us-gaap_AssetsCurrentAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xml:lang="en-US">Accounts Receivable, Net, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xml:lang="en-US">Accounts receivable, net of allowances of $621 and $525 at September 30, 2020 and December 31, 2019, respectively</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xml:lang="en-US">Accounts receivable</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent" xlink:to="lab_us-gaap_AccountsReceivableNetCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AssetsCurrent" xml:lang="en-US">Assets, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_AssetsCurrent" xml:lang="en-US">Total current assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="lab_us-gaap_AssetsCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xml:lang="en-US">Cash and Cash Equivalents, at Carrying Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xml:lang="en-US">Cash and cash equivalents</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryNet" xml:lang="en-US">Inventory, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_InventoryNet" xml:lang="en-US">Inventories, net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_InventoryNet" xml:lang="en-US">Total inventories, net</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryNet" xlink:to="lab_us-gaap_InventoryNet" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherReceivablesGrossCurrent" xlink:label="loc_us-gaap_OtherReceivablesGrossCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherReceivablesGrossCurrent" xml:lang="en-US">Other Receivables, Gross, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherReceivablesGrossCurrent" xml:lang="en-US">Royalties and other receivables</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherReceivablesGrossCurrent" xlink:to="lab_us-gaap_OtherReceivablesGrossCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xml:lang="en-US">Prepaid Expense and Other Assets, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xml:lang="en-US">Prepaid expenses and other current assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnbilledReceivablesCurrent" xlink:label="loc_us-gaap_UnbilledReceivablesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_UnbilledReceivablesCurrent" xml:lang="en-US">Unbilled Receivables, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_UnbilledReceivablesCurrent" xml:lang="en-US">Unbilled receivables</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnbilledReceivablesCurrent" xlink:to="lab_us-gaap_UnbilledReceivablesCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedCash" xlink:label="loc_us-gaap_RestrictedCash" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RestrictedCash" xml:lang="en-US">Restricted Cash</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RestrictedCash" xml:lang="en-US">Restricted cash</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedCash" xlink:to="lab_us-gaap_RestrictedCash" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_Goodwill" xml:lang="en-US">Goodwill</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_Goodwill" xml:lang="en-US">Goodwill</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/positiveTerseLabel" xlink:label="lab_us-gaap_Goodwill" xml:lang="en-US">Business acquisition, goodwill acquired</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_Goodwill" xml:lang="en-US">Balance as of December 31, 2019</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_Goodwill" xml:lang="en-US">Balance as of September 30, 2020</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill" xlink:to="lab_us-gaap_Goodwill" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xml:lang="en-US">Intangible Assets, Net (Excluding Goodwill)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xml:lang="en-US">Intangible assets, net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xml:lang="en-US">Net Carrying Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaap_OtherAssetsNoncurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xml:lang="en-US">Other Assets, Noncurrent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xml:lang="en-US">Other assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsNoncurrent" xlink:to="lab_us-gaap_OtherAssetsNoncurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xml:lang="en-US">Property, Plant and Equipment, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xml:lang="en-US">Property, plant and equipment, net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xml:lang="en-US">Total property, plant and equipment, net</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xml:lang="en-US">Deferred Income Tax Assets, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xml:lang="en-US">Deferred tax assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxAssetsNet" xlink:to="lab_us-gaap_DeferredIncomeTaxAssetsNet" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xml:lang="en-US">Operating Lease, Right-of-Use Asset</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xml:lang="en-US">Operating lease right of use assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAsset" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xml:lang="en-US">Liabilities and Equity [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xml:lang="en-US">Liabilities and stockholders' equity</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="loc_us-gaap_CommitmentsAndContingencies" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xml:lang="en-US">Commitments and Contingencies</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xml:lang="en-US">Commitments and contingencies (Note 10)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingencies" xlink:to="lab_us-gaap_CommitmentsAndContingencies" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleLongTermNotesPayable" xlink:label="loc_us-gaap_ConvertibleLongTermNotesPayable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConvertibleLongTermNotesPayable" xml:lang="en-US">Convertible Notes Payable, Noncurrent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConvertibleLongTermNotesPayable" xml:lang="en-US">Convertible senior notes, net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ConvertibleLongTermNotesPayable" xml:lang="en-US">Net carrying amount</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConvertibleLongTermNotesPayable" xlink:to="lab_us-gaap_ConvertibleLongTermNotesPayable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" xlink:label="loc_us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" xml:lang="en-US">Deferred Tax and Other Liabilities, Noncurrent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" xml:lang="en-US">Deferred tax liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" xlink:to="lab_us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xml:lang="en-US">Liabilities and Equity</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xml:lang="en-US">Total liabilities and stockholders' equity</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquity" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xml:lang="en-US">Liabilities, Current [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xml:lang="en-US">Current liabilities:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:to="lab_us-gaap_LiabilitiesCurrentAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccountsPayableCurrent" xml:lang="en-US">Accounts Payable, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccountsPayableCurrent" xml:lang="en-US">Accounts payable</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrent" xlink:to="lab_us-gaap_AccountsPayableCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xml:lang="en-US">Accrued Liabilities, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xml:lang="en-US">Accrued liabilities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xml:lang="en-US">Total accrued liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LiabilitiesCurrent" xml:lang="en-US">Liabilities, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_LiabilitiesCurrent" xml:lang="en-US">Total current liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="lab_us-gaap_LiabilitiesCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xml:lang="en-US">Operating Lease, Liability, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xml:lang="en-US">Operating lease liability</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent" xml:lang="en-US">Other Liabilities, Noncurrent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent" xml:lang="en-US">Other liabilities, long-term</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherLiabilitiesNoncurrent" xlink:to="lab_us-gaap_OtherLiabilitiesNoncurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="loc_us-gaap_StockholdersEquityAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xml:lang="en-US">Stockholders' Equity Attributable to Parent [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xml:lang="en-US">Stockholders' equity:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityAbstract" xlink:to="lab_us-gaap_StockholdersEquityAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xml:lang="en-US">Accumulated other comprehensive loss</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xml:lang="en-US">Additional Paid in Capital, Common Stock</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xml:lang="en-US">Additional paid-in capital</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:to="lab_us-gaap_AdditionalPaidInCapitalCommonStock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaap_CommonStockValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommonStockValue" xml:lang="en-US">Common Stock, Value, Issued</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_CommonStockValue" xml:lang="en-US">Common stock, $0.01 par value; 80,000,000 shares authorized; 52,606,700 shares at September 30, 2020 and 52,078,258 shares at December 31, 2019 issued and outstanding</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockValue" xlink:to="lab_us-gaap_CommonStockValue" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaap_PreferredStockValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PreferredStockValue" xml:lang="en-US">Preferred Stock, Value, Issued</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PreferredStockValue" xml:lang="en-US">Preferred stock, $0.01 par value, 5,000,000 shares authorized, no shares issued or outstanding</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockValue" xlink:to="lab_us-gaap_PreferredStockValue" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockholdersEquity" xml:lang="en-US">Stockholders' Equity Attributable to Parent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_StockholdersEquity" xml:lang="en-US">Total stockholders' equity</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_StockholdersEquity" xml:lang="en-US">Balance</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_StockholdersEquity" xml:lang="en-US">Balance</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="lab_us-gaap_StockholdersEquity" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xml:lang="en-US">Retained earnings</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="lab_us-gaap_RetainedEarningsAccumulatedDeficit" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaap_Liabilities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_Liabilities" xml:lang="en-US">Total liabilities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_Liabilities" xml:lang="en-US">Total liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Liabilities" xlink:to="lab_us-gaap_Liabilities" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xml:lang="en-US">Operating Lease, Liability, Noncurrent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xml:lang="en-US">Operating lease liability, long-term</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xml:lang="en-US">Allowance for Doubtful Accounts Receivable, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xml:lang="en-US">Accounts receivable, reserve for doubtful accounts</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xml:lang="en-US">Common Stock, Par or Stated Value Per Share</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xml:lang="en-US">Common stock, par value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_CommonStockParOrStatedValuePerShare" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaap_CommonStockSharesAuthorized" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xml:lang="en-US">Common Stock, Shares Authorized</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xml:lang="en-US">Common stock, shares authorized</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesAuthorized" xlink:to="lab_us-gaap_CommonStockSharesAuthorized" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommonStockSharesIssued" xml:lang="en-US">Common Stock, Shares, Issued</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommonStockSharesIssued" xml:lang="en-US">Common stock, shares issued</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued" xlink:to="lab_us-gaap_CommonStockSharesIssued" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="loc_us-gaap_CommonStockSharesOutstanding" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xml:lang="en-US">Common Stock, Shares, Outstanding</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xml:lang="en-US">Common stock, shares outstanding</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesOutstanding" xlink:to="lab_us-gaap_CommonStockSharesOutstanding" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xml:lang="en-US">Preferred Stock, Par or Stated Value Per Share</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xml:lang="en-US">Preferred stock, par value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_PreferredStockParOrStatedValuePerShare" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xml:lang="en-US">Preferred Stock, Shares Authorized</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xml:lang="en-US">Preferred stock, shares authorized</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesAuthorized" xlink:to="lab_us-gaap_PreferredStockSharesAuthorized" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="loc_us-gaap_PreferredStockSharesIssued" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PreferredStockSharesIssued" xml:lang="en-US">Preferred Stock, Shares Issued</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PreferredStockSharesIssued" xml:lang="en-US">Preferred stock, shares issued</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesIssued" xlink:to="lab_us-gaap_PreferredStockSharesIssued" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PreferredStockSharesOutstanding" xml:lang="en-US">Preferred Stock, Shares Outstanding</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PreferredStockSharesOutstanding" xml:lang="en-US">Preferred stock, shares outstanding</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesOutstanding" xlink:to="lab_us-gaap_PreferredStockSharesOutstanding" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaap_IncomeStatementAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeStatementAbstract" xml:lang="en-US">Income Statement [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementAbstract" xlink:to="lab_us-gaap_IncomeStatementAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xml:lang="en-US">Comprehensive income (loss)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTax" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostsAndExpensesAbstract" xlink:label="loc_us-gaap_CostsAndExpensesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CostsAndExpensesAbstract" xml:lang="en-US">Costs and Expenses [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_CostsAndExpensesAbstract" xml:lang="en-US">Costs and operating expenses:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostsAndExpensesAbstract" xlink:to="lab_us-gaap_CostsAndExpensesAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xml:lang="en-US">Cost of Goods and Services Sold</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xml:lang="en-US">Cost of product revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSold" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostsAndExpenses" xlink:label="loc_us-gaap_CostsAndExpenses" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CostsAndExpenses" xml:lang="en-US">Costs and Expenses</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_CostsAndExpenses" xml:lang="en-US">Total costs and operating expenses</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostsAndExpenses" xlink:to="lab_us-gaap_CostsAndExpenses" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense" xml:lang="en-US">Research and Development Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense" xml:lang="en-US">Research and development</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpense" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpense" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xml:lang="en-US">Selling, General and Administrative Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xml:lang="en-US">Selling, general and administrative</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpense" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xml:lang="en-US">Income before income taxes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xml:lang="en-US">Income Tax Expense (Benefit)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xml:lang="en-US">Income tax provision</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NetIncomeLoss" xml:lang="en-US">Net Income (Loss) Attributable to Parent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_NetIncomeLoss" xml:lang="en-US">Net income</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_NetIncomeLoss" xml:lang="en-US">Net income</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="lab_us-gaap_NetIncomeLoss" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingIncomeLoss" xml:lang="en-US">Operating Income (Loss)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_OperatingIncomeLoss" xml:lang="en-US">Income from operations</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingIncomeLoss" xlink:to="lab_us-gaap_OperatingIncomeLoss" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xml:lang="en-US">Other comprehensive income (loss):</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xml:lang="en-US">Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xml:lang="en-US">Foreign currency translation adjustment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaap_RevenuesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RevenuesAbstract" xml:lang="en-US">Revenues [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RevenuesAbstract" xml:lang="en-US">Revenue:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenuesAbstract" xlink:to="lab_us-gaap_RevenuesAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xml:lang="en-US">Revenue from Contract with Customer, Including Assessed Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xml:lang="en-US">Revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/presentationGuidance" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xml:lang="en-US">Weighted average common shares outstanding:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xml:lang="en-US">Diluted</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xml:lang="en-US">Weighted average shares used in computing net income per share - diluted</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Basic</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xml:lang="en-US">Basic</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xml:lang="en-US">Weighted average shares used in computing net income per share - diluted</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpenseAbstract" xml:lang="en-US">Other Nonoperating Income (Expense) [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpenseAbstract" xml:lang="en-US">Other income (expenses):</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpenseAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestExpense" xlink:label="loc_us-gaap_InterestExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InterestExpense" xml:lang="en-US">Interest Expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_InterestExpense" xml:lang="en-US">Interest expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestExpense" xlink:to="lab_us-gaap_InterestExpense" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentIncomeNet" xlink:label="loc_us-gaap_InvestmentIncomeNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InvestmentIncomeNet" xml:lang="en-US">Investment Income, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_InvestmentIncomeNet" xml:lang="en-US">Investment income</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentIncomeNet" xlink:to="lab_us-gaap_InvestmentIncomeNet" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xml:lang="en-US">Other Nonoperating Income (Expense)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xml:lang="en-US">Other (expenses) income</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpense" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaap_NonoperatingIncomeExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NonoperatingIncomeExpense" xml:lang="en-US">Nonoperating Income (Expense)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_NonoperatingIncomeExpense" xml:lang="en-US">Other expenses, net</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NonoperatingIncomeExpense" xlink:to="lab_us-gaap_NonoperatingIncomeExpense" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xml:lang="en-US">Gain (Loss) on Extinguishment of Debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xml:lang="en-US">Loss on extinguishment of debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xml:lang="en-US">Loss on extinguishment of debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xml:lang="en-US">Loss on extinguishment of debt</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:to="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xml:lang="en-US">Earnings Per Share [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xml:lang="en-US">Earnings per share:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareAbstract" xlink:to="lab_us-gaap_EarningsPerShareAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EarningsPerShareBasic" xml:lang="en-US">Earnings Per Share, Basic</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EarningsPerShareBasic" xml:lang="en-US">Basic</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasic" xlink:to="lab_us-gaap_EarningsPerShareBasic" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xml:lang="en-US">Earnings Per Share, Diluted</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xml:lang="en-US">Diluted</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDiluted" xlink:to="lab_us-gaap_EarningsPerShareDiluted" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_ProductOrServiceAxis" xml:lang="en-US">Product and Service [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductOrServiceAxis" xlink:to="lab_srt_ProductOrServiceAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_ProductsAndServicesDomain" xml:lang="en-US">Product and Service [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductsAndServicesDomain" xlink:to="lab_srt_ProductsAndServicesDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductMember" xlink:label="loc_us-gaap_ProductMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProductMember" xml:lang="en-US">Product [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ProductMember" xml:lang="en-US">Products</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/presentationGuidance" xlink:label="lab_us-gaap_ProductMember" xml:lang="en-US">Product</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductMember" xlink:to="lab_us-gaap_ProductMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RoyaltyMember" xlink:label="loc_us-gaap_RoyaltyMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RoyaltyMember" xml:lang="en-US">Royalty [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_RoyaltyMember" xml:lang="en-US">Royalty and Other Revenue</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_us-gaap_RoyaltyMember" xml:lang="en-US">Royalty and Other Revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RoyaltyMember" xlink:to="lab_us-gaap_RoyaltyMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="lab_us-gaap_StatementOfStockholdersEquityAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionAxis" xml:lang="en-US">Business Acquisition [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionAxis" xml:lang="en-US">Business Acquisition [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAxis" xlink:to="lab_us-gaap_BusinessAcquisitionAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="lab_us-gaap_BusinessAcquisitionAcquireeDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xml:lang="en-US">Equity Components [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xml:lang="en-US">Equity Components [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementEquityComponentsAxis" xlink:to="lab_us-gaap_StatementEquityComponentsAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EquityComponentDomain" xml:lang="en-US">Equity Component [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EquityComponentDomain" xml:lang="en-US">Equity Component [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityComponentDomain" xlink:to="lab_us-gaap_EquityComponentDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xml:lang="en-US">AOCI Attributable to Parent [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xml:lang="en-US">Accumulated Other Comprehensive Loss</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xml:lang="en-US">Additional Paid-in Capital [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xml:lang="en-US">Additional Paid- In Capital</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:to="lab_us-gaap_AdditionalPaidInCapitalMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommonStockMember" xml:lang="en-US">Common Stock [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommonStockMember" xml:lang="en-US">Common Stock</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockMember" xlink:to="lab_us-gaap_CommonStockMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RetainedEarningsMember" xml:lang="en-US">Retained Earnings [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RetainedEarningsMember" xml:lang="en-US">Retained Earnings/ (Accumulated Deficit)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsMember" xlink:to="lab_us-gaap_RetainedEarningsMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xml:lang="en-US">Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xml:lang="en-US">Stock-based compensation expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaap_SharesOutstanding" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharesOutstanding" xml:lang="en-US">Shares, Outstanding</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_SharesOutstanding" xml:lang="en-US">Balance (in shares)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_SharesOutstanding" xml:lang="en-US">Balance (in shares)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesOutstanding" xlink:to="lab_us-gaap_SharesOutstanding" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesNewIssues" xml:lang="en-US">Stock Issued During Period, Shares, New Issues</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesNewIssues" xml:lang="en-US">Proceeds from issuance of common stock, net of issuance costs (in shares)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesNewIssues" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xml:lang="en-US">Stock Issued During Period, Shares, Share-based Compensation, Net of Forfeitures</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xml:lang="en-US">Exercise of stock options and releases of restricted stock (in shares)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueNewIssues" xml:lang="en-US">Stock Issued During Period, Value, New Issues</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueNewIssues" xml:lang="en-US">Proceeds from issuance of common stock, net of issuance costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueNewIssues" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xml:lang="en-US">Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xml:lang="en-US">Exercise of stock options and releases of restricted stock</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueAcquisitions" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueAcquisitions" xml:lang="en-US">Stock Issued During Period, Value, Acquisitions</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueAcquisitions" xml:lang="en-US">Issuance of common stock pursuant to the acquisition of C Technologies, Inc.</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueAcquisitions" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesAcquisitions" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xml:lang="en-US">Stock Issued During Period, Shares, Acquisitions</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xml:lang="en-US">Issuance of common stock pursuant to the acquisition of C Technologies, Inc., (in shares)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesAcquisitions" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Foreign Currency Translation Adjustment, Net of Tax</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" xml:lang="en-US">Translation adjustment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfUnits" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfUnits" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueConversionOfUnits" xml:lang="en-US">Stock Issued During Period, Value, Conversion of Units</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueConversionOfUnits" xml:lang="en-US">Issuance of common stock for debt conversion</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfUnits" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueConversionOfUnits" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits" xml:lang="en-US">Stock Issued During Period, Shares, Conversion of Units</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits" xml:lang="en-US">Issuance of common stock for debt conversion (in shares)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" xlink:label="loc_rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" xml:lang="en-US">Adjustments To Additional Paid In Capital Reduction For Equity Component Of Convertible Debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" xml:lang="en-US">Reduction for equity component from debt conversion, net of tax</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" xlink:to="lab_rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" xml:lang="en-US">Adjustments To Additional Paid In Capital Reduction For Equity Component Of Convertible Debt.</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xml:lang="en-US">Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xml:lang="en-US">Tax withholding on vesting of restricted stock units (in shares)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:to="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xml:lang="en-US">Share-based Payment Arrangement, Decrease for Tax Withholding Obligation</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xml:lang="en-US">Tax withholding on vesting of restricted stock units</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt" xml:lang="en-US">Adjustments to Additional Paid in Capital, Equity Component of Convertible Debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt" xml:lang="en-US">Equity component of 0.375% senior convertible notes, net of tax</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" xml:lang="en-US">Adjustments to Additional Paid in Capital, Stock Issued, Issuance Costs</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/presentationGuidance" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" xml:lang="en-US">Proceeds from issuance of common stock, net of issuance cost</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xml:lang="en-US">Debt Instrument, Interest Rate, Stated Percentage</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xml:lang="en-US">Senior convertible notes</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xml:lang="en-US">Notes, interest rate</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentAxis" xml:lang="en-US">Debt Instrument [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentAxis" xml:lang="en-US">Debt Instrument [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentAxis" xlink:to="lab_us-gaap_DebtInstrumentAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xml:lang="en-US">Debt Instrument, Name [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xml:lang="en-US">Debt Instrument, Name [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentNameDomain" xlink:to="lab_us-gaap_DebtInstrumentNameDomain" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="loc_rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember" xml:lang="en-US">Zero Point Three Seven Five Percentage Convertible Senior Notes Due Twenty Twenty Four [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember" xml:lang="en-US">0.375% Convertible Senior Notes due 2024</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:to="lab_rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xml:lang="en-US">Statement of Cash Flows [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:to="lab_us-gaap_StatementOfCashFlowsAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xml:lang="en-US">Cash, cash equivalents and restricted cash, beginning of period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xml:lang="en-US">Cash, cash equivalents and restricted cash, end of period</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xml:lang="en-US">Net increase in cash, cash equivalents and restricted cash</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xml:lang="en-US">Effect of Exchange Rate on Cash and Cash Equivalents</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xml:lang="en-US">Effect of exchange rate changes on cash, cash equivalents and restricted cash</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:to="lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xml:lang="en-US">Cash flows from financing activities:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xml:lang="en-US">Total cash provided by financing activities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromConvertibleDebt" xlink:label="loc_us-gaap_ProceedsFromConvertibleDebt" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProceedsFromConvertibleDebt" xml:lang="en-US">Proceeds from Convertible Debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ProceedsFromConvertibleDebt" xml:lang="en-US">Proceeds from issuance of convertible debt, net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ProceedsFromConvertibleDebt" xml:lang="en-US">Proceeds from issuance of convertible senior notes, net of costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromConvertibleDebt" xlink:to="lab_us-gaap_ProceedsFromConvertibleDebt" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfCommonStock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfCommonStock" xml:lang="en-US">Proceeds from Issuance of Common Stock</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfCommonStock" xml:lang="en-US">Proceeds from issuance of common stock, net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfCommonStock" xml:lang="en-US">Net proceeds from public offering</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:to="lab_us-gaap_ProceedsFromIssuanceOfCommonStock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProceedsFromStockOptionsExercised" xml:lang="en-US">Proceeds from Stock Options Exercised</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ProceedsFromStockOptionsExercised" xml:lang="en-US">Proceeds from exercise of stock options</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromStockOptionsExercised" xlink:to="lab_us-gaap_ProceedsFromStockOptionsExercised" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfConvertibleDebt" xlink:label="loc_us-gaap_RepaymentsOfConvertibleDebt" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RepaymentsOfConvertibleDebt" xml:lang="en-US">Repayments of Convertible Debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_RepaymentsOfConvertibleDebt" xml:lang="en-US">Repayment of senior convertible notes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RepaymentsOfConvertibleDebt" xlink:to="lab_us-gaap_RepaymentsOfConvertibleDebt" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xml:lang="en-US">Payment, Tax Withholding, Share-based Payment Arrangement</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xml:lang="en-US">Payment of tax withholding obligation on vesting of restricted stock</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xml:lang="en-US">Cash flows from investing activities:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xml:lang="en-US">Total cash used in investing activities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xml:lang="en-US">Payments to Acquire Businesses, Net of Cash Acquired</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xml:lang="en-US">Acquisitions, net of cash acquired</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xml:lang="en-US">Purchases of property, plant and equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireSoftware" xlink:label="loc_us-gaap_PaymentsToAcquireSoftware" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PaymentsToAcquireSoftware" xml:lang="en-US">Payments to Acquire Software</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_PaymentsToAcquireSoftware" xml:lang="en-US">Additions to capitalized software costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireSoftware" xlink:to="lab_us-gaap_PaymentsToAcquireSoftware" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xml:lang="en-US">Cash flows from operating activities:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xml:lang="en-US">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xml:lang="en-US">Adjustments to reconcile net income to net cash provided by operating activities:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfDebtDiscountPremium" xlink:label="loc_us-gaap_AmortizationOfDebtDiscountPremium" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AmortizationOfDebtDiscountPremium" xml:lang="en-US">Amortization of Debt Discount (Premium)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_AmortizationOfDebtDiscountPremium" xml:lang="en-US">Non-cash interest expense</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AmortizationOfDebtDiscountPremium" xml:lang="en-US">Accretion of the debt discount</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfDebtDiscountPremium" xlink:to="lab_us-gaap_AmortizationOfDebtDiscountPremium" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xml:lang="en-US">Deferred Income Tax Expense (Benefit)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xml:lang="en-US">Deferred income taxes, net</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationAndAmortization" xlink:label="loc_us-gaap_DepreciationAndAmortization" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DepreciationAndAmortization" xml:lang="en-US">Depreciation, Depletion and Amortization, Nonproduction</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DepreciationAndAmortization" xml:lang="en-US">Depreciation and amortization</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DepreciationAndAmortization" xlink:to="lab_us-gaap_DepreciationAndAmortization" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensation" xml:lang="en-US">Share-based Compensation</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensation" xml:lang="en-US">Stock-based compensation expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensation" xlink:to="lab_us-gaap_ShareBasedCompensation" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="loc_us-gaap_OtherNoncashIncomeExpense" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherNoncashIncomeExpense" xml:lang="en-US">Other Noncash Income (Expense)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_OtherNoncashIncomeExpense" xml:lang="en-US">Other</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNoncashIncomeExpense" xlink:to="lab_us-gaap_OtherNoncashIncomeExpense" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xml:lang="en-US">Increase (Decrease) in Operating Capital [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xml:lang="en-US">Changes in operating assets and liabilities, excluding impact of acquisitions:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xml:lang="en-US">Increase (Decrease) in Accounts Payable</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xml:lang="en-US">Accounts payable</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xml:lang="en-US">Accounts receivable</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" xml:lang="en-US">Increase (Decrease) in Accrued Liabilities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" xml:lang="en-US">Accrued expenses</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:to="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xml:lang="en-US">Increase (Decrease) in Inventories</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xml:lang="en-US">Inventories</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInInventories" xlink:to="lab_us-gaap_IncreaseDecreaseInInventories" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xml:lang="en-US">Increase (Decrease) in Other Noncurrent Liabilities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xml:lang="en-US">Long-term liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherReceivables" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherReceivables" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherReceivables" xml:lang="en-US">Increase (Decrease) in Other Receivables</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherReceivables" xml:lang="en-US">Royalties and other receivables</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherReceivables" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherReceivables" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xml:lang="en-US">Increase (Decrease) in Prepaid Expense and Other Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xml:lang="en-US">Prepaid expenses and other assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:label="loc_us-gaap_IncreaseDecreaseInContractWithCustomerAsset" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xml:lang="en-US">Increase (Decrease) in Contract with Customer, Asset</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xml:lang="en-US">Unbilled receivables</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:to="lab_us-gaap_IncreaseDecreaseInContractWithCustomerAsset" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" xlink:label="loc_rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" xml:lang="en-US">Increase Decrease in Operating Lease Right Of Use Asset</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" xml:lang="en-US">Operating lease right of use assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" xlink:to="lab_rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" xml:lang="en-US">The increase (decrease) during the reporting period in operating lease right of use asset.</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IncreasedecreaseInOperatingLeaseLiability" xlink:label="loc_rgen_IncreasedecreaseInOperatingLeaseLiability" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_IncreasedecreaseInOperatingLeaseLiability" xml:lang="en-US">Increase Decrease in Operating Lease Liability</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_IncreasedecreaseInOperatingLeaseLiability" xml:lang="en-US">Operating lease liability</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_IncreasedecreaseInOperatingLeaseLiability" xlink:to="lab_rgen_IncreasedecreaseInOperatingLeaseLiability" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_IncreasedecreaseInOperatingLeaseLiability" xml:lang="en-US">The increase (decrease) during the reporting period in operating lease liability.</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xml:lang="en-US">Increase (Decrease) in Other Operating Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xml:lang="en-US">Other assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xml:lang="en-US">Total cash provided by operating activities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SupplementalCashFlowElementsAbstract" xlink:label="loc_us-gaap_SupplementalCashFlowElementsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SupplementalCashFlowElementsAbstract" xml:lang="en-US">Supplemental Cash Flow Elements [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_SupplementalCashFlowElementsAbstract" xml:lang="en-US">Supplemental disclosure of non-cash investing and financing activities:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SupplementalCashFlowElementsAbstract" xlink:to="lab_us-gaap_SupplementalCashFlowElementsAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssued1" xlink:label="loc_us-gaap_StockIssued1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssued1" xml:lang="en-US">Stock Issued</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_StockIssued1" xml:lang="en-US">Fair value of common stock issued for acquisition of C Technologies, Inc.</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssued1" xlink:to="lab_us-gaap_StockIssued1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentAmount1" xlink:label="loc_us-gaap_DebtConversionConvertedInstrumentAmount1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtConversionConvertedInstrumentAmount1" xml:lang="en-US">Debt Conversion, Converted Instrument, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtConversionConvertedInstrumentAmount1" xml:lang="en-US">Fair value of 2,316,229 shares of common stock issued for conversion of convertible notes</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtConversionConvertedInstrumentAmount1" xml:lang="en-US">Total consideration on conversion</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtConversionConvertedInstrumentAmount1" xlink:to="lab_us-gaap_DebtConversionConvertedInstrumentAmount1" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_AssetsAcquiredUnderOperatingLeases" xlink:label="loc_rgen_AssetsAcquiredUnderOperatingLeases" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_AssetsAcquiredUnderOperatingLeases" xml:lang="en-US">Assets Acquired Under Operating Leases</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_AssetsAcquiredUnderOperatingLeases" xml:lang="en-US">Assets acquired under operating leases</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_AssetsAcquiredUnderOperatingLeases" xlink:to="lab_rgen_AssetsAcquiredUnderOperatingLeases" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_AssetsAcquiredUnderOperatingLeases" xml:lang="en-US">Assets acquired under operating leases.</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccountingPoliciesAbstract" xml:lang="en-US">Accounting Policies [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingPoliciesAbstract" xlink:to="lab_us-gaap_AccountingPoliciesAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xml:lang="en-US">Significant Accounting Policies [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xml:lang="en-US">Summary of Significant Accounting Policies</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="lab_us-gaap_SignificantAccountingPoliciesTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="loc_us-gaap_DisclosureTextBlockAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DisclosureTextBlockAbstract" xml:lang="en-US">Disclosure Text Block [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureTextBlockAbstract" xlink:to="lab_us-gaap_DisclosureTextBlockAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock" xml:lang="en-US">Fair Value Disclosures [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock" xml:lang="en-US">Fair Value Measurements</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresTextBlock" xlink:to="lab_us-gaap_FairValueDisclosuresTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TextBlockAbstract" xlink:label="loc_us-gaap_TextBlockAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TextBlockAbstract" xml:lang="en-US">Text Block [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TextBlockAbstract" xlink:to="lab_us-gaap_TextBlockAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xml:lang="en-US">Business Combination Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xml:lang="en-US">Acquisitions</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:to="lab_us-gaap_BusinessCombinationDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xml:lang="en-US">Revenue Recognition</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditLossAbstract" xlink:label="loc_us-gaap_CreditLossAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CreditLossAbstract" xml:lang="en-US">Credit Loss [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditLossAbstract" xlink:to="lab_us-gaap_CreditLossAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditLossFinancialInstrumentTextBlock" xlink:label="loc_us-gaap_CreditLossFinancialInstrumentTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CreditLossFinancialInstrumentTextBlock" xml:lang="en-US">Credit Loss, Financial Instrument [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_CreditLossFinancialInstrumentTextBlock" xml:lang="en-US">Credit Losses</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditLossFinancialInstrumentTextBlock" xlink:to="lab_us-gaap_CreditLossFinancialInstrumentTextBlock" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xlink:label="loc_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xml:lang="en-US">Goodwill And Other Intangible Assets Disclosure [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xml:lang="en-US">Goodwill and Other Intangible Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xml:lang="en-US">Goodwill and Other Intangible Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xlink:to="lab_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xml:lang="en-US">Goodwill And Other Intangible Assets Disclosure abstract</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xml:lang="en-US">Goodwill and Intangible Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StatementClassOfStockAxis" xml:lang="en-US">Class of Stock [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementClassOfStockAxis" xlink:to="lab_us-gaap_StatementClassOfStockAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ClassOfStockDomain" xml:lang="en-US">Class of Stock [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfStockDomain" xlink:to="lab_us-gaap_ClassOfStockDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:label="loc_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xml:lang="en-US">Supplemental Balance Sheet Disclosures [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xml:lang="en-US">Consolidated Balance Sheet Detail</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:to="lab_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtDisclosureAbstract" xml:lang="en-US">Debt Disclosure [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureAbstract" xlink:to="lab_us-gaap_DebtDisclosureAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtTextBlock" xlink:label="loc_us-gaap_LongTermDebtTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermDebtTextBlock" xml:lang="en-US">Long-term Debt [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LongTermDebtTextBlock" xml:lang="en-US">Convertible Senior Notes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtTextBlock" xlink:to="lab_us-gaap_LongTermDebtTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EquityAbstract" xml:lang="en-US">Equity [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityAbstract" xlink:to="lab_us-gaap_EquityAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xml:lang="en-US">Stockholders' Equity Note Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xml:lang="en-US">Stockholders' Equity</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xml:lang="en-US">Commitments and Contingencies</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:label="loc_us-gaap_ComprehensiveIncomeNoteTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ComprehensiveIncomeNoteTextBlock" xml:lang="en-US">Comprehensive Income (Loss) Note [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ComprehensiveIncomeNoteTextBlock" xml:lang="en-US">Accumulated Other Comprehensive Loss</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:to="lab_us-gaap_ComprehensiveIncomeNoteTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract" xml:lang="en-US">Income Tax Disclosure [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract" xlink:to="lab_us-gaap_IncomeTaxDisclosureAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xml:lang="en-US">Income Tax Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xml:lang="en-US">Income Taxes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="lab_us-gaap_IncomeTaxDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasicAbstract" xlink:label="loc_us-gaap_EarningsPerShareBasicAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EarningsPerShareBasicAbstract" xml:lang="en-US">Earnings Per Share, Basic [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasicAbstract" xlink:to="lab_us-gaap_EarningsPerShareBasicAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="loc_us-gaap_EarningsPerShareTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xml:lang="en-US">Earnings Per Share [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xml:lang="en-US">Earnings Per Share</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareTextBlock" xlink:to="lab_us-gaap_EarningsPerShareTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="loc_us-gaap_RelatedPartyTransactionsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RelatedPartyTransactionsAbstract" xml:lang="en-US">Related Party Transactions [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionsAbstract" xlink:to="lab_us-gaap_RelatedPartyTransactionsAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xml:lang="en-US">Related Party Transactions Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xml:lang="en-US">Related Party Transactions</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:to="lab_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SegmentReportingAbstract" xml:lang="en-US">Segment Reporting [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingAbstract" xlink:to="lab_us-gaap_SegmentReportingAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xml:lang="en-US">Segment Reporting</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="lab_us-gaap_SegmentReportingDisclosureTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="loc_us-gaap_SubsequentEventsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SubsequentEventsAbstract" xml:lang="en-US">Subsequent Events [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsAbstract" xlink:to="lab_us-gaap_SubsequentEventsAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="loc_us-gaap_SubsequentEventsTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SubsequentEventsTextBlock" xml:lang="en-US">Subsequent Events [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_SubsequentEventsTextBlock" xml:lang="en-US">Subsequent Events</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsTextBlock" xlink:to="lab_us-gaap_SubsequentEventsTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xml:lang="en-US">Recent Accounting Standards Updates</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock" xlink:label="loc_rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock" xml:lang="en-US">Risks and Uncertainties in Entities Business [Policy Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock" xml:lang="en-US">Risks and Uncertainties</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock" xlink:to="lab_rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock" xml:lang="en-US">Risks and Uncertainties in Entities Business [Policy Text Block]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xml:lang="en-US">Basis of Presentation and Significant Accounting Policies [Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xml:lang="en-US">Basis of presentation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:to="lab_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CTechnologiesMember" xlink:label="loc_rgen_CTechnologiesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_CTechnologiesMember" xml:lang="en-US">C Technologies [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_CTechnologiesMember" xml:lang="en-US">C Technologies</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_CTechnologiesMember" xml:lang="en-US">C Technologies, Inc.</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_CTechnologiesMember" xlink:to="lab_rgen_CTechnologiesMember" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_EngineeredMoldingTechnologyLlcMember" xlink:label="loc_rgen_EngineeredMoldingTechnologyLlcMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_EngineeredMoldingTechnologyLlcMember" xml:lang="en-US">Engineered Molding Technology LLC [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_EngineeredMoldingTechnologyLlcMember" xml:lang="en-US">Engineered Molding Technology</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_EngineeredMoldingTechnologyLlcMember" xlink:to="lab_rgen_EngineeredMoldingTechnologyLlcMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_EngineeredMoldingTechnologyLlcMember" xml:lang="en-US">Engineered Molding Technology LLC</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xml:lang="en-US">Business Acquisition, Pro Forma Information [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xml:lang="en-US">Unaudited Supplemental Pro Forma Information</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:to="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xml:lang="en-US">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xml:lang="en-US">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xml:lang="en-US">Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xml:lang="en-US">Schedule of Identified Intangible Assets and Estimated Useful Lives</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:to="lab_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xml:lang="en-US">Disaggregation of Revenue [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xml:lang="en-US">Disaggregation of Revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfRevenueByMajorCustomersTableTextBlock" xlink:label="loc_rgen_ScheduleOfRevenueByMajorCustomersTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ScheduleOfRevenueByMajorCustomersTableTextBlock" xml:lang="en-US">Schedule Of Revenue By Major Customers [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_ScheduleOfRevenueByMajorCustomersTableTextBlock" xml:lang="en-US">Revenue from Significant Customers</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ScheduleOfRevenueByMajorCustomersTableTextBlock" xlink:to="lab_rgen_ScheduleOfRevenueByMajorCustomersTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ScheduleOfRevenueByMajorCustomersTableTextBlock" xml:lang="en-US">Schedule Of Revenue By Major Customers [Table Text Block]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xml:lang="en-US">Contract with Customer, Asset and Liability [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xml:lang="en-US">Summary of Receivables and Deferred Revenue from Contracts with Customers</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:to="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:label="loc_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xml:lang="en-US">Summary Of Allowance For Credit Losses For Accounts Receivables</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:to="lab_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock" xml:lang="en-US">Schedule of Goodwill [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock" xml:lang="en-US">Changes in Carrying Value of Goodwill</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfGoodwillTextBlock" xlink:to="lab_us-gaap_ScheduleOfGoodwillTextBlock" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" xml:lang="en-US">Schedule Of Finite Lived And Indefinite Lived Intangible Assets [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" xml:lang="en-US">Intangible assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" xlink:to="lab_rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" xml:lang="en-US">Schedule Of Finite Lived And Indefinite Lived Intangible Assets [Table Text Block]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xml:lang="en-US">Finite-lived Intangible Assets Amortization Expense [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xml:lang="en-US">Schedule of Amortization Expense for Amortized Intangible Assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xml:lang="en-US">Schedule of Inventory, Current [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xml:lang="en-US">Inventories</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xml:lang="en-US">Property, Plant and Equipment [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xml:lang="en-US">Property, Plant and Equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xml:lang="en-US">Schedule of Accrued Liabilities [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xml:lang="en-US">Accrued Liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleDebtTableTextBlock" xlink:label="loc_us-gaap_ConvertibleDebtTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConvertibleDebtTableTextBlock" xml:lang="en-US">Convertible Debt [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConvertibleDebtTableTextBlock" xml:lang="en-US">Carrying Value of Convertible Senior Notes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConvertibleDebtTableTextBlock" xlink:to="lab_us-gaap_ConvertibleDebtTableTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xml:lang="en-US">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xml:lang="en-US">Stock-Based Compensation Expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xml:lang="en-US">Schedule of Share-based Compensation, Restricted Stock Units Award Activity [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xml:lang="en-US">Summary of Restricted Stock Unit Activity</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xml:lang="en-US">Share-based Compensation, Stock Options, Activity [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xml:lang="en-US">Summary of Option Activity</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AwardTypeAxis" xml:lang="en-US">Award Type [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AwardTypeAxis" xml:lang="en-US">Award Type [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardTypeAxis" xlink:to="lab_us-gaap_AwardTypeAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xml:lang="en-US">Equity Award [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xml:lang="en-US">Equity Award [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xml:lang="en-US">Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xml:lang="en-US">Summary of Changes in Accumulated Other Comprehensive Income</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SummaryOfIncomeTaxExaminationsTextBlock" xlink:label="loc_us-gaap_SummaryOfIncomeTaxExaminationsTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SummaryOfIncomeTaxExaminationsTextBlock" xml:lang="en-US">Summary of Income Tax Examinations [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SummaryOfIncomeTaxExaminationsTextBlock" xml:lang="en-US">Summary of Tax Returns Periods Subject to Examination by Federal, State and International Taxing Authorities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SummaryOfIncomeTaxExaminationsTextBlock" xlink:to="lab_us-gaap_SummaryOfIncomeTaxExaminationsTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xml:lang="en-US">Schedule of Weighted Average Number of Shares [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xml:lang="en-US">Basic and Diluted Weighted Average Shares Outstanding</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xml:lang="en-US">Concentration Risk Benchmark [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xml:lang="en-US">Concentration Risk Benchmark [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xml:lang="en-US">Concentration Risk Benchmark [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xml:lang="en-US">Concentration Risk Benchmark [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="lab_us-gaap_ConcentrationRiskBenchmarkDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SalesRevenueNetMember" xml:lang="en-US">Revenue Benchmark [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_us-gaap_SalesRevenueNetMember" xml:lang="en-US">Total Revenue</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_SalesRevenueNetMember" xml:lang="en-US">Total Revenue</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SalesRevenueNetMember" xml:lang="en-US">Sales Revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SalesRevenueNetMember" xlink:to="lab_us-gaap_SalesRevenueNetMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xml:lang="en-US">Schedule of Revenue by Major Customers by Reporting Segments [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xml:lang="en-US">Percentage of Revenue from Significant Customers</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:label="loc_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xml:lang="en-US">Schedules of Concentration of Risk, by Risk Factor [Table Text Block]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xml:lang="en-US">Percentage by Geographic Area or Significant Customers</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:to="lab_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueDisclosuresAbstract" xml:lang="en-US">Fair Value Disclosures [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract" xlink:to="lab_us-gaap_FairValueDisclosuresAbstract" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_SummaryOfSignificantAccountingPoliciesTable" xlink:label="loc_rgen_SummaryOfSignificantAccountingPoliciesTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_SummaryOfSignificantAccountingPoliciesTable" xml:lang="en-US">Summary Of Significant Accounting Policies [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_SummaryOfSignificantAccountingPoliciesTable" xml:lang="en-US">Summary Of Significant Accounting Policies [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable" xlink:to="lab_rgen_SummaryOfSignificantAccountingPoliciesTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_SummaryOfSignificantAccountingPoliciesTable" xml:lang="en-US">Summary Of Significant Accounting Policies [Table]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xml:lang="en-US">Adjustments for New Accounting Pronouncements [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xml:lang="en-US">Adjustments for New Accounting Pronouncements [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TypeOfAdoptionMember" xml:lang="en-US">Type of Adoption [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_TypeOfAdoptionMember" xml:lang="en-US">Type of Adoption [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TypeOfAdoptionMember" xlink:to="lab_us-gaap_TypeOfAdoptionMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenueArrangementTypeAxis" xlink:label="loc_us-gaap_DeferredRevenueArrangementTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredRevenueArrangementTypeAxis" xml:lang="en-US">Deferred Revenue Arrangement Type [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredRevenueArrangementTypeAxis" xml:lang="en-US">Deferred Revenue Arrangement Type [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueArrangementTypeAxis" xlink:to="lab_us-gaap_DeferredRevenueArrangementTypeAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenueArrangementTypeDomain" xlink:label="loc_us-gaap_DeferredRevenueArrangementTypeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredRevenueArrangementTypeDomain" xml:lang="en-US">Deferred Revenue [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredRevenueArrangementTypeDomain" xml:lang="en-US">Deferred Revenue [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueArrangementTypeDomain" xlink:to="lab_us-gaap_DeferredRevenueArrangementTypeDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis" xml:lang="en-US">Income Tax Authority [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis" xml:lang="en-US">Income Tax Authority [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis" xlink:to="lab_us-gaap_IncomeTaxAuthorityAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain" xml:lang="en-US">Income Tax Authority [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain" xml:lang="en-US">Income Tax Authority [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain" xlink:to="lab_us-gaap_IncomeTaxAuthorityDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_MajorCustomersAxis" xml:lang="en-US">Customer [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_MajorCustomersAxis" xml:lang="en-US">Customer [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MajorCustomersAxis" xlink:to="lab_srt_MajorCustomersAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_NameOfMajorCustomerDomain" xml:lang="en-US">Customer [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_NameOfMajorCustomerDomain" xml:lang="en-US">Customer [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_NameOfMajorCustomerDomain" xlink:to="lab_srt_NameOfMajorCustomerDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_RangeAxis" xml:lang="en-US">Range [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_RangeAxis" xml:lang="en-US">Range [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeAxis" xlink:to="lab_srt_RangeAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_RangeMember" xml:lang="en-US">Range [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_RangeMember" xml:lang="en-US">Range [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeMember" xlink:to="lab_srt_RangeMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xml:lang="en-US">Subsequent Event Type [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xml:lang="en-US">Subsequent Event Type [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeAxis" xlink:to="lab_us-gaap_SubsequentEventTypeAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xml:lang="en-US">Subsequent Event Type [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xml:lang="en-US">Subsequent Event Type [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeDomain" xlink:to="lab_us-gaap_SubsequentEventTypeDomain" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_SummaryOfSignificantAccountingPoliciesLineItems" xlink:label="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_SummaryOfSignificantAccountingPoliciesLineItems" xml:lang="en-US">Summary Of Significant Accounting Policies [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_SummaryOfSignificantAccountingPoliciesLineItems" xml:lang="en-US">Summary Of Significant Accounting Policies [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems" xlink:to="lab_rgen_SummaryOfSignificantAccountingPoliciesLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_SummaryOfSignificantAccountingPoliciesLineItems" xml:lang="en-US">Summary Of Significant Accounting Policies [Line Items]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xml:lang="en-US">Debt Instrument, Face Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xml:lang="en-US">Principal amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xml:lang="en-US">Notes issued</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/presentationGuidance" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xml:lang="en-US">Aggregate principal amount</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentFaceAmount" xlink:to="lab_us-gaap_DebtInstrumentFaceAmount" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:label="loc_us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xml:lang="en-US">Debt Instrument, Frequency of Periodic Payment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xml:lang="en-US">Notes, frequency of periodic payment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:to="lab_us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="loc_us-gaap_DebtInstrumentMaturityDate" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentMaturityDate" xml:lang="en-US">Debt Instrument, Maturity Date</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentMaturityDate" xml:lang="en-US">Notes, due date</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentMaturityDate" xlink:to="lab_us-gaap_DebtInstrumentMaturityDate" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaap_LongTermDebt" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermDebt" xml:lang="en-US">Long-term Debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LongTermDebt" xml:lang="en-US">Total convertible senior notes</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LongTermDebt" xml:lang="en-US">Notes, carrying value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebt" xlink:to="lab_us-gaap_LongTermDebt" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtFairValue" xlink:label="loc_us-gaap_LongTermDebtFairValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermDebtFairValue" xml:lang="en-US">Long-term Debt, Fair Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LongTermDebtFairValue" xml:lang="en-US">Fair value of convertible senior notes</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LongTermDebtFairValue" xml:lang="en-US">Fair value of the note</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtFairValue" xlink:to="lab_us-gaap_LongTermDebtFairValue" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BalanceSheetLocationAxis" xml:lang="en-US">Balance Sheet Location [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BalanceSheetLocationAxis" xlink:to="lab_us-gaap_BalanceSheetLocationAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BalanceSheetLocationDomain" xml:lang="en-US">Balance Sheet Location [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BalanceSheetLocationDomain" xlink:to="lab_us-gaap_BalanceSheetLocationDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="loc_us-gaap_CashAndCashEquivalentsAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CashAndCashEquivalentsAxis" xml:lang="en-US">Cash and Cash Equivalents [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAxis" xlink:to="lab_us-gaap_CashAndCashEquivalentsAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xml:lang="en-US">Cash and Cash Equivalents [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="loc_us-gaap_MoneyMarketFundsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_MoneyMarketFundsMember" xml:lang="en-US">Money Market Funds [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MoneyMarketFundsMember" xlink:to="lab_us-gaap_MoneyMarketFundsMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="loc_us-gaap_FairValueInputsLevel1Member" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xml:lang="en-US">Fair Value, Inputs, Level 1 [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel1Member" xlink:to="lab_us-gaap_FairValueInputsLevel1Member" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_TitleOfIndividualAxis" xml:lang="en-US">Title of Individual [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_TitleOfIndividualAxis" xml:lang="en-US">Title of Individual [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_TitleOfIndividualAxis" xlink:to="lab_srt_TitleOfIndividualAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain" xml:lang="en-US">Title of Individual [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain" xml:lang="en-US">Relationship to Entity [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="lab_srt_TitleOfIndividualWithRelationshipToEntityDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="loc_us-gaap_LongtermDebtTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongtermDebtTypeAxis" xml:lang="en-US">Long-term Debt, Type [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongtermDebtTypeAxis" xlink:to="lab_us-gaap_LongtermDebtTypeAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="loc_us-gaap_LongtermDebtTypeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongtermDebtTypeDomain" xml:lang="en-US">Long-term Debt, Type [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongtermDebtTypeDomain" xlink:to="lab_us-gaap_LongtermDebtTypeDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueByMeasurementFrequencyAxis" xml:lang="en-US">Measurement Frequency [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:to="lab_us-gaap_FairValueByMeasurementFrequencyAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueMeasurementFrequencyDomain" xml:lang="en-US">Measurement Frequency [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain" xlink:to="lab_us-gaap_FairValueMeasurementFrequencyDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationsAbstract" xml:lang="en-US">Business Combinations [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationsAbstract" xlink:to="lab_us-gaap_BusinessCombinationsAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems" xml:lang="en-US">Business Acquisition [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems" xml:lang="en-US">Business Acquisition [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems" xlink:to="lab_us-gaap_BusinessAcquisitionLineItems" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xml:lang="en-US">Business Combination, Acquisition Related Costs</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xml:lang="en-US">Business Combination, Acquisition Related Costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:to="lab_us-gaap_BusinessCombinationAcquisitionRelatedCosts" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xml:lang="en-US">Business Combination, Consideration Transferred</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xml:lang="en-US">Business combination, consideration transferred</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:to="lab_us-gaap_BusinessCombinationConsiderationTransferred1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" xml:lang="en-US">Business Combination, Pro Forma Information, Revenue of Acquiree since Acquisition Date, Actual</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" xml:lang="en-US">Business acquisition, revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" xlink:to="lab_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/positiveLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xml:lang="en-US">Fair value of acquired finite lived intangible assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xml:lang="en-US">Business combination, intangible assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed" xlink:label="loc_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed" xml:lang="en-US">Business Combination, Separately Recognized Transactions, Additional Disclosures, Acquisition Cost Expensed</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed" xml:lang="en-US">Transaction costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed" xlink:to="lab_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue" xml:lang="en-US">Acquired Finite-lived Intangible Asset, Residual Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue" xml:lang="en-US">Intangible Asset Residual Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue" xlink:to="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Tangible Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets" xml:lang="en-US">Business acquisition, net tangible assets acquired</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets" xlink:to="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Tangible Assets</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:label="loc_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xml:lang="en-US">Business Acquisition, Transaction Costs</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xml:lang="en-US">Transaction costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:to="lab_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xml:lang="en-US">Business Acquisition, Pro Forma Net Income (Loss)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xml:lang="en-US">Business acquisitions proforma net income</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xml:lang="en-US">Pro forma net income</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:to="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold" xlink:label="loc_us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold" xml:lang="en-US">Compensation Expense, Excluding Cost of Good and Service Sold</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold" xlink:to="lab_us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xml:lang="en-US">Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xml:lang="en-US">Deferred tax liability</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:to="lab_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xml:lang="en-US">Business Acquisition, Percentage of Voting Interests Acquired</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xml:lang="en-US">Business acquisition, voting interest acquired</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:to="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationConsiderationIndemnificationEscrow" xlink:label="loc_rgen_BusinessCombinationConsiderationIndemnificationEscrow" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_BusinessCombinationConsiderationIndemnificationEscrow" xml:lang="en-US">Business Combination Consideration Indemnification Escrow</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_BusinessCombinationConsiderationIndemnificationEscrow" xml:lang="en-US">Business acquisition, Indemnification escrow</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_BusinessCombinationConsiderationIndemnificationEscrow" xlink:to="lab_rgen_BusinessCombinationConsiderationIndemnificationEscrow" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_BusinessCombinationConsiderationIndemnificationEscrow" xml:lang="en-US">Business Combination Consideration Indemnification Escrow</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContingentConsiderationByTypeAxis" xlink:label="loc_us-gaap_ContingentConsiderationByTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ContingentConsiderationByTypeAxis" xml:lang="en-US">Contingent Consideration by Type [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ContingentConsiderationByTypeAxis" xml:lang="en-US">Contingent Consideration by Type [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContingentConsiderationByTypeAxis" xlink:to="lab_us-gaap_ContingentConsiderationByTypeAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContingentConsiderationTypeDomain" xlink:label="loc_us-gaap_ContingentConsiderationTypeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ContingentConsiderationTypeDomain" xml:lang="en-US">Contingent Consideration Type [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ContingentConsiderationTypeDomain" xml:lang="en-US">Contingent Consideration Type [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContingentConsiderationTypeDomain" xlink:to="lab_us-gaap_ContingentConsiderationTypeDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xml:lang="en-US">Income Statement Location [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xml:lang="en-US">Income Statement Location [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationAxis" xlink:to="lab_us-gaap_IncomeStatementLocationAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xml:lang="en-US">Income Statement Location [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xml:lang="en-US">Income Statement Location [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationDomain" xlink:to="lab_us-gaap_IncomeStatementLocationDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xml:lang="en-US">Selling, General and Administrative Expenses [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xml:lang="en-US">Selling, general and administrative</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xml:lang="en-US">Selling, general and administrative</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByAssetClassAxis" xlink:label="loc_us-gaap_FairValueByAssetClassAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueByAssetClassAxis" xml:lang="en-US">Asset Class [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByAssetClassAxis" xlink:to="lab_us-gaap_FairValueByAssetClassAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xml:lang="en-US">Asset Class [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:to="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillMember" xlink:label="loc_us-gaap_GoodwillMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GoodwillMember" xml:lang="en-US">Goodwill [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_GoodwillMember" xml:lang="en-US">Goodwill [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillMember" xlink:to="lab_us-gaap_GoodwillMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonrecurringAdjustmentAxis" xlink:label="loc_us-gaap_NonrecurringAdjustmentAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NonrecurringAdjustmentAxis" xml:lang="en-US">Nonrecurring Adjustment [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NonrecurringAdjustmentAxis" xlink:to="lab_us-gaap_NonrecurringAdjustmentAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonrecurringAdjustmentDomain" xlink:label="loc_us-gaap_NonrecurringAdjustmentDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NonrecurringAdjustmentDomain" xml:lang="en-US">Nonrecurring Adjustment [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NonrecurringAdjustmentDomain" xlink:to="lab_us-gaap_NonrecurringAdjustmentDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TrustForBenefitOfEmployeesMember" xlink:label="loc_us-gaap_TrustForBenefitOfEmployeesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TrustForBenefitOfEmployeesMember" xml:lang="en-US">Trust for Benefit of Employees [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_TrustForBenefitOfEmployeesMember" xml:lang="en-US">Employees</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TrustForBenefitOfEmployeesMember" xlink:to="lab_us-gaap_TrustForBenefitOfEmployeesMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xml:lang="en-US">Cash and cash equivalents</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Prepaid Expense and Other Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xml:lang="en-US">Prepaid expenses and other current assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xml:lang="en-US">Accounts receivable</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xml:lang="en-US">Accounts payable</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Current Liabilities Accrued Liabilities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" xml:lang="en-US">Accrued liabilities</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" xlink:to="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Current Liabilities Accrued Liabilities</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xml:lang="en-US">Deferred taxes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Inventory</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xml:lang="en-US">Inventory</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xml:lang="en-US">Fixed assets</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xml:lang="en-US">Fair value of net assets acquired</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Restricted Cash</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash" xml:lang="en-US">Restricted cash</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash" xlink:to="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash" xml:lang="en-US">Amount of restricted cash, acquired at the acquisition date.</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Right Of Use Asset</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xml:lang="en-US">Operating lease right of use asset</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xlink:to="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Right Of Use Asset.</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Liability Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" xml:lang="en-US">Operating lease liability</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" xlink:to="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Liability Current.</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Liability Non Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" xml:lang="en-US">Operating lease liability, long-term</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" xlink:to="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Liability Non Current.</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Deferred Tax Liability Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent" xml:lang="en-US">Deferred revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent" xlink:to="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent" xml:lang="en-US">Business combination recognized identifiable assets acquired and liabilities assumed deferred tax liability current.</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Accrued Bonus</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus" xml:lang="en-US">Accrued bonus</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus" xlink:to="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Accrued Bonus.</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CustomerRelationshipsMember" xml:lang="en-US">Customer Relationships [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CustomerRelationshipsMember" xml:lang="en-US">Customer relationships</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerRelationshipsMember" xlink:to="lab_us-gaap_CustomerRelationshipsMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DevelopedTechnologyRightsMember" xml:lang="en-US">Developed Technology Rights [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DevelopedTechnologyRightsMember" xml:lang="en-US">Developed technology</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_us-gaap_DevelopedTechnologyRightsMember" xml:lang="en-US">Technology - developed</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DevelopedTechnologyRightsMember" xlink:to="lab_us-gaap_DevelopedTechnologyRightsMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="loc_us-gaap_NoncompeteAgreementsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NoncompeteAgreementsMember" xml:lang="en-US">Noncompete Agreements [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_NoncompeteAgreementsMember" xml:lang="en-US">Non-compete agreements</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NoncompeteAgreementsMember" xlink:to="lab_us-gaap_NoncompeteAgreementsMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TrademarksAndTradeNamesMember" xml:lang="en-US">Trademarks and Trade Names [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_TrademarksAndTradeNamesMember" xml:lang="en-US">Trademark and tradename</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TrademarksAndTradeNamesMember" xlink:to="lab_us-gaap_TrademarksAndTradeNamesMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="loc_us-gaap_TradeNamesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TradeNamesMember" xml:lang="en-US">Trade Names [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_TradeNamesMember" xml:lang="en-US">Trademark and tradename [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TradeNamesMember" xlink:to="lab_us-gaap_TradeNamesMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xml:lang="en-US">Acquired Finite-lived Intangible Assets, Weighted Average Useful Life</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xml:lang="en-US">Weighted Average Useful Life (in years)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:to="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Finite-Lived Intangibles</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xml:lang="en-US">Fair Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xml:lang="en-US">Business Acquisition, Pro Forma Earnings Per Share, Basic</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xml:lang="en-US">Basic</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xlink:to="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xml:lang="en-US">Business Acquisition, Pro Forma Earnings Per Share, Diluted</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xml:lang="en-US">Diluted</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xlink:to="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaRevenue" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaRevenue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaRevenue" xml:lang="en-US">Business Acquisition, Pro Forma Revenue</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaRevenue" xml:lang="en-US">Pro forma total revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionsProFormaRevenue" xlink:to="lab_us-gaap_BusinessAcquisitionsProFormaRevenue" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xml:lang="en-US">Disaggregation of Revenue [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable" xlink:to="lab_us-gaap_DisaggregationOfRevenueTable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xml:lang="en-US">Disaggregation of Revenue [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xml:lang="en-US">Disaggregation of Revenue [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems" xlink:to="lab_us-gaap_DisaggregationOfRevenueLineItems" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTable" xlink:label="loc_us-gaap_ConcentrationRiskTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskTable" xml:lang="en-US">Concentration Risk [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ConcentrationRiskTable" xml:lang="en-US">Concentration Risk [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskTable" xml:lang="en-US">Concentration Risk [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskTable" xlink:to="lab_us-gaap_ConcentrationRiskTable" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_MilliporeSigmaMember" xlink:label="loc_rgen_MilliporeSigmaMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_MilliporeSigmaMember" xml:lang="en-US">Millipore Sigma [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_MilliporeSigmaMember" xml:lang="en-US">MilliporeSigma</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_MilliporeSigmaMember" xlink:to="lab_rgen_MilliporeSigmaMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_MilliporeSigmaMember" xml:lang="en-US">Millipore Sigma.</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CytivaMember" xlink:label="loc_rgen_CytivaMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_CytivaMember" xml:lang="en-US">Cytiva [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_CytivaMember" xml:lang="en-US">Cytiva (formerly GE Healthcare)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_CytivaMember" xml:lang="en-US">GE Healthcare</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_CytivaMember" xlink:to="lab_rgen_CytivaMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_CytivaMember" xml:lang="en-US">Cytiva.</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="loc_us-gaap_ConcentrationRiskLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskLineItems" xml:lang="en-US">Concentration Risk [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ConcentrationRiskLineItems" xml:lang="en-US">Concentration Risk [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskLineItems" xml:lang="en-US">Concentration Risk [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskLineItems" xlink:to="lab_us-gaap_ConcentrationRiskLineItems" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xml:lang="en-US">Contract with Customer, Asset and Liability [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xml:lang="en-US">Balances from contracts with customers only:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:to="lab_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenue" xlink:label="loc_us-gaap_DeferredRevenue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredRevenue" xml:lang="en-US">Deferred Revenue</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DeferredRevenue" xml:lang="en-US">Deferred revenue (included in accrued liabilities in the consolidated balance sheets)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenue" xlink:to="lab_us-gaap_DeferredRevenue" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract" xlink:label="loc_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract" xml:lang="en-US">Change in Contract with Customer, Asset and Liability [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract" xml:lang="en-US">Revenue recognized during the nine-month period ended September 30, 2020 relating to:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract" xlink:to="lab_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaap_ContractWithCustomerLiability" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xml:lang="en-US">Contract with Customer, Liability</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xml:lang="en-US">The beginning deferred revenue balance</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiability" xlink:to="lab_us-gaap_ContractWithCustomerLiability" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod" xlink:label="loc_us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod" xml:lang="en-US">Contract with Customer, Performance Obligation Satisfied in Previous Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod" xml:lang="en-US">Changes in pricing related to products or services satisfied in previous periods</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod" xlink:to="lab_us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xml:lang="en-US">Beginning balance</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xml:lang="en-US">Ending balance</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Writeoff</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xml:lang="en-US">Current period change for write-offs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xml:lang="en-US">Accounts Receivable, Credit Loss Expense (Reversal)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xml:lang="en-US">Current period change for expected credit losses</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:to="lab_us-gaap_ProvisionForDoubtfulAccounts" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfGoodwillTable" xml:lang="en-US">Schedule of Goodwill [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfGoodwillTable" xml:lang="en-US">Schedule of Goodwill [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable" xlink:to="lab_us-gaap_ScheduleOfGoodwillTable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillLineItems" xlink:label="loc_us-gaap_GoodwillLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GoodwillLineItems" xml:lang="en-US">Goodwill [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_GoodwillLineItems" xml:lang="en-US">Goodwill [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillLineItems" xlink:to="lab_us-gaap_GoodwillLineItems" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xml:lang="en-US">Goodwill, Foreign Currency Translation Gain (Loss)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xml:lang="en-US">Cumulative translation adjustment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:to="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod" xml:lang="en-US">Goodwill, Acquired During Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod" xml:lang="en-US">Goodwill arising from Acquisition</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAcquiredDuringPeriod" xlink:to="lab_us-gaap_GoodwillAcquiredDuringPeriod" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfIntangibleAssetsTable" xlink:label="loc_rgen_ScheduleOfIntangibleAssetsTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ScheduleOfIntangibleAssetsTable" xml:lang="en-US">Schedule of Intangible Assets [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_ScheduleOfIntangibleAssetsTable" xml:lang="en-US">Schedule of Intangible Assets [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ScheduleOfIntangibleAssetsTable" xlink:to="lab_rgen_ScheduleOfIntangibleAssetsTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ScheduleOfIntangibleAssetsTable" xml:lang="en-US">Schedule of Intangible Assets [Table]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherIntangibleAssetsMember" xlink:label="loc_us-gaap_OtherIntangibleAssetsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherIntangibleAssetsMember" xml:lang="en-US">Other Intangible Assets [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherIntangibleAssetsMember" xml:lang="en-US">Other intangibles</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherIntangibleAssetsMember" xlink:to="lab_us-gaap_OtherIntangibleAssetsMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PatentsMember" xlink:label="loc_us-gaap_PatentsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PatentsMember" xml:lang="en-US">Patents [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PatentsMember" xml:lang="en-US">Patents</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PatentsMember" xlink:to="lab_us-gaap_PatentsMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TrademarksMember" xlink:label="loc_us-gaap_TrademarksMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TrademarksMember" xml:lang="en-US">Trademarks [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_TrademarksMember" xml:lang="en-US">Trademark</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_us-gaap_TrademarksMember" xml:lang="en-US">Trademark</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TrademarksMember" xlink:to="lab_us-gaap_TrademarksMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xml:lang="en-US">Indefinite-lived Intangible Assets [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xml:lang="en-US">Indefinite-lived Intangible Assets [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="lab_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xml:lang="en-US">Indefinite-lived Intangible Assets, Major Class Name [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xml:lang="en-US">Indefinite-lived Intangible Assets, Major Class Name [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="lab_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IntangibleAssetsLineItems" xlink:label="loc_rgen_IntangibleAssetsLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_IntangibleAssetsLineItems" xml:lang="en-US">Intangible Assets [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_IntangibleAssetsLineItems" xml:lang="en-US">Intangible Assets [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_IntangibleAssetsLineItems" xlink:to="lab_rgen_IntangibleAssetsLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_IntangibleAssetsLineItems" xml:lang="en-US">Intangible Assets [Line Items]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xml:lang="en-US">Finite-Lived Intangible Assets, Accumulated Amortization</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xml:lang="en-US">Accumulated Amortization</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xml:lang="en-US">Finite-Lived Intangible Assets, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xml:lang="en-US">Gross Carrying Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsGross" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xml:lang="en-US">Finite-Lived Intangible Asset, Useful Life</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xml:lang="en-US">Weighted Average Useful Life (in years)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsGrossExcludingGoodwill" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IntangibleAssetsGrossExcludingGoodwill" xml:lang="en-US">Intangible Assets, Gross (Excluding Goodwill)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IntangibleAssetsGrossExcludingGoodwill" xml:lang="en-US">Gross Carrying Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:to="lab_us-gaap_IntangibleAssetsGrossExcludingGoodwill" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" xml:lang="en-US">Indefinite Lived Intangible Assets Accumulated Amortization</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" xml:lang="en-US">Accumulated Amortization</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="lab_rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" xml:lang="en-US">Indefinite Lived Intangible Assets Accumulated Amortization</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xml:lang="en-US">Finite-Lived Intangible Assets, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xml:lang="en-US">Net Carrying Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xml:lang="en-US">Total</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNet" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xml:lang="en-US">Indefinite-lived Intangible Assets (Excluding Goodwill)</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xml:lang="en-US">Gross Carrying Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:to="lab_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IndefiniteLivedIntangibleAssetsNet" xlink:label="loc_rgen_IndefiniteLivedIntangibleAssetsNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_IndefiniteLivedIntangibleAssetsNet" xml:lang="en-US">Indefinite Lived Intangible Assets Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_IndefiniteLivedIntangibleAssetsNet" xml:lang="en-US">Net Carrying Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_IndefiniteLivedIntangibleAssetsNet" xlink:to="lab_rgen_IndefiniteLivedIntangibleAssetsNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_IndefiniteLivedIntangibleAssetsNet" xml:lang="en-US">Indefinite Lived Intangible Assets Net</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:label="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_FiniteLivedIntangibleLiabilitiesLineItems" xml:lang="en-US">Finite Lived Intangible Liabilities [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_FiniteLivedIntangibleLiabilitiesLineItems" xml:lang="en-US">Finite-Lived Intangible Liabilities [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_FiniteLivedIntangibleLiabilitiesLineItems" xml:lang="en-US">Finite-Lived Intangible Liabilities [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:to="lab_rgen_FiniteLivedIntangibleLiabilitiesLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_FiniteLivedIntangibleLiabilitiesLineItems" xml:lang="en-US">Finite-Lived Intangible Liabilities [Line Items]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xml:lang="en-US">Amortization of Intangible Assets</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xml:lang="en-US">Amortization expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfIntangibleAssets" xlink:to="lab_us-gaap_AmortizationOfIntangibleAssets" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Remainder of Fiscal Year</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xml:lang="en-US">2020 (remaining three months)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Five</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xml:lang="en-US">2024</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Four</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xml:lang="en-US">2023</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Three</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xml:lang="en-US">2022</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Two</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xml:lang="en-US">2021</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, after Year Five</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xml:lang="en-US">2025 and thereafter</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryDisclosureAbstract" xml:lang="en-US">Inventory Disclosure [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureAbstract" xlink:to="lab_us-gaap_InventoryDisclosureAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryCurrentTable" xlink:label="loc_us-gaap_InventoryCurrentTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryCurrentTable" xml:lang="en-US">Inventory, Current [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_InventoryCurrentTable" xml:lang="en-US">Inventory, Current [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryCurrentTable" xlink:to="lab_us-gaap_InventoryCurrentTable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryLineItems" xlink:label="loc_us-gaap_InventoryLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryLineItems" xml:lang="en-US">Inventory [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_InventoryLineItems" xml:lang="en-US">Inventory [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryLineItems" xlink:to="lab_us-gaap_InventoryLineItems" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xml:lang="en-US">Inventory, Finished Goods, Net of Reserves</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xml:lang="en-US">Finished products</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:to="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xml:lang="en-US">Inventory, Raw Materials, Net of Reserves</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xml:lang="en-US">Raw materials</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:to="lab_us-gaap_InventoryRawMaterialsNetOfReserves" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InventoryWorkInProcessNetOfReserves" xml:lang="en-US">Inventory, Work in Process, Net of Reserves</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_InventoryWorkInProcessNetOfReserves" xml:lang="en-US">Work-in-process</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:to="lab_us-gaap_InventoryWorkInProcessNetOfReserves" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xml:lang="en-US">Property, Plant and Equipment [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xml:lang="en-US">Property, Plant and Equipment [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xml:lang="en-US">Property, Plant and Equipment [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xml:lang="en-US">Property, Plant and Equipment [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xml:lang="en-US">Property, Plant and Equipment [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentLineItems" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xml:lang="en-US">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xml:lang="en-US">Less - Accumulated depreciation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="loc_us-gaap_BuildingsAndImprovementsGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BuildingsAndImprovementsGross" xml:lang="en-US">Buildings and Improvements, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_BuildingsAndImprovementsGross" xml:lang="en-US">Buildings</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BuildingsAndImprovementsGross" xlink:to="lab_us-gaap_BuildingsAndImprovementsGross" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConstructionInProgressGross" xlink:label="loc_us-gaap_ConstructionInProgressGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConstructionInProgressGross" xml:lang="en-US">Construction in Progress, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConstructionInProgressGross" xml:lang="en-US">Construction in progress</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConstructionInProgressGross" xlink:to="lab_us-gaap_ConstructionInProgressGross" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FurnitureAndFixturesGross" xlink:label="loc_us-gaap_FurnitureAndFixturesGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_FurnitureAndFixturesGross" xml:lang="en-US">Furniture and Fixtures, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_FurnitureAndFixturesGross" xml:lang="en-US">Furniture, fixtures and office equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FurnitureAndFixturesGross" xlink:to="lab_us-gaap_FurnitureAndFixturesGross" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Land" xlink:label="loc_us-gaap_Land" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_Land" xml:lang="en-US">Land</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_Land" xml:lang="en-US">Land</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Land" xlink:to="lab_us-gaap_Land" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseholdImprovementsGross" xlink:label="loc_us-gaap_LeaseholdImprovementsGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LeaseholdImprovementsGross" xml:lang="en-US">Leasehold Improvements, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LeaseholdImprovementsGross" xml:lang="en-US">Leasehold improvements</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseholdImprovementsGross" xlink:to="lab_us-gaap_LeaseholdImprovementsGross" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="loc_us-gaap_MachineryAndEquipmentGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_MachineryAndEquipmentGross" xml:lang="en-US">Machinery and Equipment, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_MachineryAndEquipmentGross" xml:lang="en-US">Equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MachineryAndEquipmentGross" xlink:to="lab_us-gaap_MachineryAndEquipmentGross" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xml:lang="en-US">Property, Plant and Equipment, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xml:lang="en-US">Total property, plant and equipment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentGross" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentOther" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentOther" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentOther" xml:lang="en-US">Property, Plant and Equipment, Other, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentOther" xml:lang="en-US">Other</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentOther" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentOther" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareGross" xml:lang="en-US">Capitalized Computer Software, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareGross" xml:lang="en-US">Computer hardware and software</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedComputerSoftwareGross" xlink:to="lab_us-gaap_CapitalizedComputerSoftwareGross" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_Depreciation" xml:lang="en-US">Depreciation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Depreciation" xlink:to="lab_us-gaap_Depreciation" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_FacilityAxis" xlink:label="loc_rgen_FacilityAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_FacilityAxis" xml:lang="en-US">Facility [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_FacilityAxis" xlink:to="lab_rgen_FacilityAxis" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_FacilityDomain" xlink:label="loc_rgen_FacilityDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_FacilityDomain" xml:lang="en-US">Facility [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_FacilityDomain" xlink:to="lab_rgen_FacilityDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xml:lang="en-US">Property, Plant and Equipment, Type [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xml:lang="en-US">Property, Plant and Equipment, Type [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RgenFacilityAxis" xlink:label="loc_rgen_RgenFacilityAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_RgenFacilityAxis" xml:lang="en-US">Rgen Facility [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_RgenFacilityAxis" xlink:to="lab_rgen_RgenFacilityAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_RgenFacilityAxis" xml:lang="en-US">Rgen Facility [Axis]</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RgenFacilityDomain" xlink:label="loc_rgen_RgenFacilityDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_RgenFacilityDomain" xml:lang="en-US">Rgen Facility [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_RgenFacilityDomain" xlink:to="lab_rgen_RgenFacilityDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_RgenFacilityDomain" xml:lang="en-US">Rgen Facility [Domain]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PayablesAndAccrualsAbstract" xml:lang="en-US">Payables and Accruals [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract" xlink:to="lab_us-gaap_PayablesAndAccrualsAbstract" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfAccruedLiabilitiesTable" xlink:label="loc_rgen_ScheduleOfAccruedLiabilitiesTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ScheduleOfAccruedLiabilitiesTable" xml:lang="en-US">Schedule of Accrued Liabilities [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_ScheduleOfAccruedLiabilitiesTable" xml:lang="en-US">Schedule of Accrued Liabilities [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesTable" xlink:to="lab_rgen_ScheduleOfAccruedLiabilitiesTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ScheduleOfAccruedLiabilitiesTable" xml:lang="en-US">Schedule of Accrued Liabilities [Table]</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:label="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ScheduleOfAccruedLiabilitiesLineItems" xml:lang="en-US">Schedule of Accrued Liabilities [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_ScheduleOfAccruedLiabilitiesLineItems" xml:lang="en-US">Schedule of Accrued Liabilities [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:to="lab_rgen_ScheduleOfAccruedLiabilitiesLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ScheduleOfAccruedLiabilitiesLineItems" xml:lang="en-US">Schedule of Accrued Liabilities [Line Items]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccruedIncomeTaxesCurrent" xml:lang="en-US">Accrued Income Taxes, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccruedIncomeTaxesCurrent" xml:lang="en-US">Taxes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedIncomeTaxesCurrent" xlink:to="lab_us-gaap_AccruedIncomeTaxesCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedProfessionalFeesCurrent" xlink:label="loc_us-gaap_AccruedProfessionalFeesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccruedProfessionalFeesCurrent" xml:lang="en-US">Accrued Professional Fees, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccruedProfessionalFeesCurrent" xml:lang="en-US">Professional fees</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedProfessionalFeesCurrent" xlink:to="lab_us-gaap_AccruedProfessionalFeesCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedRoyaltiesCurrent" xlink:label="loc_us-gaap_AccruedRoyaltiesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccruedRoyaltiesCurrent" xml:lang="en-US">Accrued Royalties, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccruedRoyaltiesCurrent" xml:lang="en-US">Royalty and license fees</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedRoyaltiesCurrent" xlink:to="lab_us-gaap_AccruedRoyaltiesCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="loc_us-gaap_DeferredRevenueCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredRevenueCurrent" xml:lang="en-US">Deferred Revenue, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DeferredRevenueCurrent" xml:lang="en-US">Deferred revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueCurrent" xlink:to="lab_us-gaap_DeferredRevenueCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xml:lang="en-US">Employee-related Liabilities, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xml:lang="en-US">Employee compensation</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:to="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xml:lang="en-US">Other Accrued Liabilities, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xml:lang="en-US">Other</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_OtherAccruedLiabilitiesCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xml:lang="en-US">Product Warranty Accrual, Current</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xml:lang="en-US">Warranties</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:to="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentTable" xlink:label="loc_us-gaap_DebtInstrumentTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentTable" xml:lang="en-US">Schedule of Long-term Debt Instruments [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentTable" xml:lang="en-US">Schedule of Long-term Debt Instruments [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentTable" xlink:to="lab_us-gaap_DebtInstrumentTable" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember" xlink:label="loc_rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember" xml:lang="en-US">Two Point One Two Five Percentage Convertible Senior Notes Due Twenty Twenty One [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember" xml:lang="en-US">2.125% Convertible Senior Notes due 2021</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember" xlink:to="lab_rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember" xml:lang="en-US">Two Point One Two Five Percentage Convertible Senior Notes Due Twenty Twenty One [Member]</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="loc_rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xml:lang="en-US">Zero Point Three Seven Five Percent Convertible Senior Notes Due Twenty Twenty Four [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xml:lang="en-US">0.375% Convertible Senior Notes due 2024</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:to="lab_rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember" xlink:label="loc_rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember" xml:lang="en-US">Two Point One Two Five Percentage Non Convertible Senior Notes Due Twenty Twenty One [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember" xml:lang="en-US">2.125% Non Convertible Senior Notes due 2021</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember" xlink:to="lab_rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="loc_us-gaap_DebtInstrumentLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xml:lang="en-US">Debt Instrument [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xml:lang="en-US">Debt Instrument [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentLineItems" xlink:to="lab_us-gaap_DebtInstrumentLineItems" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfFinancingCosts" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AmortizationOfFinancingCosts" xml:lang="en-US">Amortization of Debt Issuance Costs</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AmortizationOfFinancingCosts" xml:lang="en-US">Amortization of the debt issuance costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfFinancingCosts" xlink:to="lab_us-gaap_AmortizationOfFinancingCosts" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentConvertibleConversionPrice1" xlink:label="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentConvertibleConversionPrice1" xml:lang="en-US">Debt Instrument, Convertible, Conversion Price</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentConvertibleConversionPrice1" xml:lang="en-US">Notes initial conversion price</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1" xlink:to="lab_us-gaap_DebtInstrumentConvertibleConversionPrice1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentConvertibleConversionRatio1" xlink:label="loc_us-gaap_DebtInstrumentConvertibleConversionRatio1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentConvertibleConversionRatio1" xml:lang="en-US">Debt Instrument, Convertible, Conversion Ratio</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentConvertibleConversionRatio1" xml:lang="en-US">Notes conversion ratio per $1,000 principal amount</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentConvertibleConversionRatio1" xlink:to="lab_us-gaap_DebtInstrumentConvertibleConversionRatio1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFairValue" xlink:label="loc_us-gaap_DebtInstrumentFairValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentFairValue" xml:lang="en-US">Debt Instrument, Fair Value Disclosure</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentFairValue" xml:lang="en-US">Notes issued, fair value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentFairValue" xlink:to="lab_us-gaap_DebtInstrumentFairValue" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage" xml:lang="en-US">Debt Instrument, Interest Rate, Effective Percentage</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage" xml:lang="en-US">Effective interest rate on the Notes</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:to="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentRedemptionPricePercentage" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPricePercentage" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentRedemptionPricePercentage" xml:lang="en-US">Debt Instrument, Redemption Price, Percentage</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentRedemptionPricePercentage" xml:lang="en-US">Notes redemption price</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPricePercentage" xlink:to="lab_us-gaap_DebtInstrumentRedemptionPricePercentage" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestExpenseDebtExcludingAmortization" xlink:label="loc_us-gaap_InterestExpenseDebtExcludingAmortization" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_InterestExpenseDebtExcludingAmortization" xml:lang="en-US">Interest Expense, Debt, Excluding Amortization</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_InterestExpenseDebtExcludingAmortization" xml:lang="en-US">Contractual coupon interest</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestExpenseDebtExcludingAmortization" xlink:to="lab_us-gaap_InterestExpenseDebtExcludingAmortization" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_OptionToPurchaseAdditionalDebtFaceAmount" xlink:label="loc_rgen_OptionToPurchaseAdditionalDebtFaceAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_OptionToPurchaseAdditionalDebtFaceAmount" xml:lang="en-US">Option to Purchase Additional Debt Face Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_OptionToPurchaseAdditionalDebtFaceAmount" xml:lang="en-US">Additional Notes issued</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_OptionToPurchaseAdditionalDebtFaceAmount" xlink:to="lab_rgen_OptionToPurchaseAdditionalDebtFaceAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_OptionToPurchaseAdditionalDebtFaceAmount" xml:lang="en-US">Option to purchase additional debt face amount.</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_DiscountRate" xlink:label="loc_rgen_DiscountRate" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_DiscountRate" xml:lang="en-US">Discount Rate</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_DiscountRate" xml:lang="en-US">Discount rate</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_DiscountRate" xlink:to="lab_rgen_DiscountRate" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_DiscountRate" xml:lang="en-US">Discount rate.</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature" xlink:label="loc_us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature" xml:lang="en-US">Debt Instrument, Convertible, Beneficial Conversion Feature</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature" xml:lang="en-US">Proceeds allocated to the conversion feature</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature" xlink:to="lab_us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent" xlink:label="loc_rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent" xml:lang="en-US">Convertible Notes Transaction Costs Of Liability Component</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent" xml:lang="en-US">Transaction costs attributable to liability component</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent" xlink:to="lab_rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent" xml:lang="en-US">Convertible notes transaction costs of liability component.</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ConvertibleNotesTransactionCostsOfEquityComponent" xlink:label="loc_rgen_ConvertibleNotesTransactionCostsOfEquityComponent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ConvertibleNotesTransactionCostsOfEquityComponent" xml:lang="en-US">Convertible Notes Transaction Costs Of Equity Component</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_ConvertibleNotesTransactionCostsOfEquityComponent" xml:lang="en-US">Transaction costs attributable to equity component</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ConvertibleNotesTransactionCostsOfEquityComponent" xlink:to="lab_rgen_ConvertibleNotesTransactionCostsOfEquityComponent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ConvertibleNotesTransactionCostsOfEquityComponent" xml:lang="en-US">Convertible notes transaction costs of equity component.</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarlyRepaymentOfSeniorDebt" xlink:label="loc_us-gaap_EarlyRepaymentOfSeniorDebt" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EarlyRepaymentOfSeniorDebt" xml:lang="en-US">Early Repayment of Senior Debt</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EarlyRepaymentOfSeniorDebt" xml:lang="en-US">Repayment Of Senior Debt</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarlyRepaymentOfSeniorDebt" xlink:to="lab_us-gaap_EarlyRepaymentOfSeniorDebt" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentIncreaseAccruedInterest" xlink:label="loc_us-gaap_DebtInstrumentIncreaseAccruedInterest" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentIncreaseAccruedInterest" xml:lang="en-US">Debt Instrument, Increase, Accrued Interest</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtInstrumentIncreaseAccruedInterest" xml:lang="en-US">Accrued interest</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentIncreaseAccruedInterest" xlink:to="lab_us-gaap_DebtInstrumentIncreaseAccruedInterest" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xml:lang="en-US">Stock Issued During Period, Shares, Conversion of Convertible Securities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xml:lang="en-US">Conversion of Convertible Securities Stock Issued | shares</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xml:lang="en-US">Conversion of Convertible Securities Stock Issued</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xml:lang="en-US">Stock Issued During Period, Value, Conversion of Convertible Securities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xml:lang="en-US">Conversion of Convertible Securities Stock Issued | value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent" xlink:label="loc_us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent" xml:lang="en-US">Debt Instrument, Convertible, Carrying Amount of Equity Component</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent" xml:lang="en-US">Equity component of converted debt</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent" xlink:to="lab_us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateTerms" xlink:label="loc_us-gaap_DebtInstrumentInterestRateTerms" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentInterestRateTerms" xml:lang="en-US">Debt Instrument, Interest Rate Terms</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentInterestRateTerms" xml:lang="en-US">Interest repayment terms</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateTerms" xlink:to="lab_us-gaap_DebtInstrumentInterestRateTerms" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_DebtInstrumentFaceAmountRemaining" xlink:label="loc_rgen_DebtInstrumentFaceAmountRemaining" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_DebtInstrumentFaceAmountRemaining" xml:lang="en-US">Debt Instrument Face Amount Remaining</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_DebtInstrumentFaceAmountRemaining" xml:lang="en-US">Face amount of remaining convertible debt</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_DebtInstrumentFaceAmountRemaining" xlink:to="lab_rgen_DebtInstrumentFaceAmountRemaining" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_DebtInstrumentFaceAmountRemaining" xml:lang="en-US">Debt instrument face amount remaining</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodAxis" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentRedemptionPeriodAxis" xml:lang="en-US">Debt Instrument, Redemption, Period [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentRedemptionPeriodAxis" xml:lang="en-US">Debt Instrument, Redemption, Period [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis" xlink:to="lab_us-gaap_DebtInstrumentRedemptionPeriodAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodDomain" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentRedemptionPeriodDomain" xml:lang="en-US">Debt Instrument, Redemption, Period [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_DebtInstrumentRedemptionPeriodDomain" xml:lang="en-US">Debt Instrument, Redemption, Period [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain" xlink:to="lab_us-gaap_DebtInstrumentRedemptionPeriodDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentCarryingAmount" xml:lang="en-US">Long-term Debt, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DebtInstrumentCarryingAmount" xml:lang="en-US">Principal amount</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentCarryingAmount" xlink:to="lab_us-gaap_DebtInstrumentCarryingAmount" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscount" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtInstrumentUnamortizedDiscount" xml:lang="en-US">Debt Instrument, Unamortized Discount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:label="lab_us-gaap_DebtInstrumentUnamortizedDiscount" xml:lang="en-US">Less: unamortized debt discount</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentUnamortizedDiscount" xlink:to="lab_us-gaap_DebtInstrumentUnamortizedDiscount" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="loc_us-gaap_DeferredFinanceCostsNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DeferredFinanceCostsNet" xml:lang="en-US">Debt Issuance Costs, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:label="lab_us-gaap_DeferredFinanceCostsNet" xml:lang="en-US">Less: unamortized debt issuance costs</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredFinanceCostsNet" xlink:to="lab_us-gaap_DeferredFinanceCostsNet" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleNotesPayable" xlink:label="loc_us-gaap_ConvertibleNotesPayable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConvertibleNotesPayable" xml:lang="en-US">Convertible Notes Payable</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_ConvertibleNotesPayable" xml:lang="en-US">Total debt</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConvertibleNotesPayable" xlink:to="lab_us-gaap_ConvertibleNotesPayable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xml:lang="en-US">Disclosure of Compensation Related Costs, Share-based Payments [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_StockholdersEquityNoteDisclosureTable" xlink:label="loc_rgen_StockholdersEquityNoteDisclosureTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_StockholdersEquityNoteDisclosureTable" xml:lang="en-US">Stockholders Equity Note Disclosure [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_StockholdersEquityNoteDisclosureTable" xml:lang="en-US">Stockholders Equity Note Disclosure [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable" xlink:to="lab_rgen_StockholdersEquityNoteDisclosureTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_StockholdersEquityNoteDisclosureTable" xml:lang="en-US">Stockholders Equity Note Disclosure [Table]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_MaximumMember" xml:lang="en-US">Maximum [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_MaximumMember" xml:lang="en-US">Maximum</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MaximumMember" xlink:to="lab_srt_MaximumMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_MinimumMember" xml:lang="en-US">Minimum [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_MinimumMember" xml:lang="en-US">Minimum</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MinimumMember" xlink:to="lab_srt_MinimumMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xml:lang="en-US">Employee Stock Option [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xml:lang="en-US">Employee Stock Option</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockOptionMember" xlink:to="lab_us-gaap_EmployeeStockOptionMember" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_NonEmployeeDirectorStockOptionMember" xlink:label="loc_rgen_NonEmployeeDirectorStockOptionMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_NonEmployeeDirectorStockOptionMember" xml:lang="en-US">Non Employee Director Stock Option[Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_NonEmployeeDirectorStockOptionMember" xml:lang="en-US">Non-Employee Directors</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_NonEmployeeDirectorStockOptionMember" xlink:to="lab_rgen_NonEmployeeDirectorStockOptionMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_NonEmployeeDirectorStockOptionMember" xml:lang="en-US">Non Employee Director Stock Option[Member]</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_UnvestedOptionsMember" xlink:label="loc_rgen_UnvestedOptionsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_UnvestedOptionsMember" xml:lang="en-US">Unvested Options [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_UnvestedOptionsMember" xml:lang="en-US">Unvested Options</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_UnvestedOptionsMember" xlink:to="lab_rgen_UnvestedOptionsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_UnvestedOptionsMember" xml:lang="en-US">Unvested Options [Member]</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_RestrictedStockAndPerformanceStockUnitsMember" xml:lang="en-US">Restricted Stock And Performance Stock Units [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_RestrictedStockAndPerformanceStockUnitsMember" xml:lang="en-US">Restricted Stock Units and Performance Stock Units</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:to="lab_rgen_RestrictedStockAndPerformanceStockUnitsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_RestrictedStockAndPerformanceStockUnitsMember" xml:lang="en-US">Restricted stock units and performance stock units.</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_StockholdersEquityNoteDisclosureLineItems" xlink:label="loc_rgen_StockholdersEquityNoteDisclosureLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_StockholdersEquityNoteDisclosureLineItems" xml:lang="en-US">Stockholders Equity Note Disclosure [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_StockholdersEquityNoteDisclosureLineItems" xml:lang="en-US">Stockholders Equity Note Disclosure [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems" xlink:to="lab_rgen_StockholdersEquityNoteDisclosureLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_StockholdersEquityNoteDisclosureLineItems" xml:lang="en-US">Stockholders Equity Note Disclosure [Line Items]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xml:lang="en-US">Incentive options, vesting period</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xml:lang="en-US">Incentive options, vesting percentage</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Vested</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xml:lang="en-US">Aggregate intrinsic value of restricted stock units vested</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xml:lang="en-US">Weighted average grant date fair value of restricted stock units granted</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xml:lang="en-US">Restricted stock units, outstanding</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xml:lang="en-US">Unvested at December 31, 2019</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xml:lang="en-US">Unvested at September 30, 2020</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xml:lang="en-US">Total grant date fair value of restricted stock units vested</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xml:lang="en-US">Incentive options, term</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xml:lang="en-US">Incentive options, vesting period</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" xlink:label="loc_rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options and Equity Instruments Other Than Options, Nonvested, Number of Shares</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" xml:lang="en-US">Number of unvested options and restricted stock units</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" xlink:to="lab_rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options and Equity Instruments Other Than Options, Nonvested, Number of Shares</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xml:lang="en-US">Aggregate intrinsic value of stock options exercised</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xml:lang="en-US">Weighted average grant date fair value of share-based awards granted</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xml:lang="en-US">Stock options, outstanding</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xml:lang="en-US">Options outstanding at December 31, 2019 | shares</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xml:lang="en-US">Options outstanding at September 30, 2020 | shares</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested in Period, Fair Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" xml:lang="en-US">Total fair value of stock options vested</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaap_SharePrice" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharePrice" xml:lang="en-US">Share Price</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharePrice" xml:lang="en-US">Closing price of common stock</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharePrice" xlink:to="lab_us-gaap_SharePrice" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CommonStockIssuePricePerShare" xlink:label="loc_rgen_CommonStockIssuePricePerShare" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_CommonStockIssuePricePerShare" xml:lang="en-US">Common Stock Issue Price Per Share</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_CommonStockIssuePricePerShare" xml:lang="en-US">Common stock issue price per share</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_CommonStockIssuePricePerShare" xlink:to="lab_rgen_CommonStockIssuePricePerShare" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_CommonStockIssuePricePerShare" xml:lang="en-US">Common stock issue price per share.</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xml:lang="en-US">Total unrecognized compensation cost</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xml:lang="en-US">Unrecognized compensation cost, weighted average remaining requisite service period</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xml:lang="en-US">Exercised number of shares</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xml:lang="en-US">Exercised | shares</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="loc_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xml:lang="en-US">Common Stock, Capital Shares Reserved for Future Issuance</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xml:lang="en-US">Common stock shares reserved for Issuance</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:to="lab_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VestingAxis" xlink:label="loc_us-gaap_VestingAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_VestingAxis" xml:lang="en-US">Vesting [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_VestingAxis" xml:lang="en-US">Vesting [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VestingAxis" xlink:to="lab_us-gaap_VestingAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VestingDomain" xlink:label="loc_us-gaap_VestingDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_VestingDomain" xml:lang="en-US">Vesting [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_VestingDomain" xml:lang="en-US">Vesting [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VestingDomain" xlink:to="lab_us-gaap_VestingDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationAwardTrancheOneMember" xml:lang="en-US">Share-based Compensation Award, Tranche One [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationAwardTrancheOneMember" xml:lang="en-US">Vest Over Three Year</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:to="lab_us-gaap_ShareBasedCompensationAwardTrancheOneMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaap_PlanNameAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PlanNameAxis" xml:lang="en-US">Plan Name [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameAxis" xlink:to="lab_us-gaap_PlanNameAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaap_PlanNameDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PlanNameDomain" xml:lang="en-US">Plan Name [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameDomain" xlink:to="lab_us-gaap_PlanNameDomain" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_StockOptionAndIncentivePlanMember" xlink:label="loc_rgen_StockOptionAndIncentivePlanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_StockOptionAndIncentivePlanMember" xml:lang="en-US">Stock Option And Incentive Plan [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_StockOptionAndIncentivePlanMember" xml:lang="en-US">2018 Plan</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_StockOptionAndIncentivePlanMember" xlink:to="lab_rgen_StockOptionAndIncentivePlanMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_StockOptionAndIncentivePlanMember" xml:lang="en-US">Stock Option and Incentive Plan [Member]</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_UnderwriterMember" xlink:label="loc_rgen_UnderwriterMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_UnderwriterMember" xml:lang="en-US">Underwriter [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_UnderwriterMember" xml:lang="en-US">Underwriters</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_UnderwriterMember" xlink:to="lab_rgen_UnderwriterMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_UnderwriterMember" xml:lang="en-US">Underwriter.</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xml:lang="en-US">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xml:lang="en-US">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xml:lang="en-US">Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CostOfSalesMember" xml:lang="en-US">Cost of Sales [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CostOfSalesMember" xml:lang="en-US">Cost of product revenue</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfSalesMember" xlink:to="lab_us-gaap_CostOfSalesMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember" xml:lang="en-US">Research and Development Expense [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember" xml:lang="en-US">Research and development</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpenseMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Additional Disclosures [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xml:lang="en-US">Weighted-Average Remaining Contractual Term (in years)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xml:lang="en-US">Options exercisable at September 30, 2020</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xml:lang="en-US">Options outstanding at September 30, 2020</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xml:lang="en-US">Vested and expected to vest at September 30, 2020</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:label="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Aggregate Intrinsic Value [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xml:lang="en-US">Aggregate Intrinsic Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:to="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Aggregate Intrinsic Value [Abstract]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xml:lang="en-US">Options exercisable at September 30, 2020</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xml:lang="en-US">Options outstanding at September 30, 2020</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xml:lang="en-US">Vested and expected to vest at September 30, 2020</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding [Roll Forward]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xml:lang="en-US">Options Outstanding</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xml:lang="en-US">Options exercisable at September 30, 2020 | shares</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xml:lang="en-US">Granted | shares</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xml:lang="en-US">Vested and expected to vest at September 30, 2020(1) | shares</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xml:lang="en-US">Weighted-Average Exercise Price Per Share</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xml:lang="en-US">Options exercisable at September 30, 2020</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xml:lang="en-US">Options outstanding at December 31, 2019</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xml:lang="en-US">Options outstanding at September 30, 2020</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xml:lang="en-US">Stock options, weighted average exercise price</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xml:lang="en-US">Exercised</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xml:lang="en-US">Granted</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_PercentageOfSharesSubjectToForfeiture" xlink:label="loc_rgen_PercentageOfSharesSubjectToForfeiture" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_PercentageOfSharesSubjectToForfeiture" xml:lang="en-US">Percentage of Shares Subject to Forfeiture</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_PercentageOfSharesSubjectToForfeiture" xml:lang="en-US">Estimated forfeiture rates</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_PercentageOfSharesSubjectToForfeiture" xlink:to="lab_rgen_PercentageOfSharesSubjectToForfeiture" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_PercentageOfSharesSubjectToForfeiture" xml:lang="en-US">Percentage of shares subject to forfeiture.</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_NonExecutiveMember" xlink:label="loc_rgen_NonExecutiveMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_NonExecutiveMember" xml:lang="en-US">Non-Executive [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_NonExecutiveMember" xml:lang="en-US">Awards Granted to Non-Executive Level Employees</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_NonExecutiveMember" xlink:to="lab_rgen_NonExecutiveMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_NonExecutiveMember" xml:lang="en-US">Non-Executive [Member]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ExecutiveOfficerMember" xlink:label="loc_srt_ExecutiveOfficerMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_ExecutiveOfficerMember" xml:lang="en-US">Executive Officer [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_ExecutiveOfficerMember" xml:lang="en-US">Awards Granted to Executive Level Employees</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ExecutiveOfficerMember" xlink:to="lab_srt_ExecutiveOfficerMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Additional Disclosures [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xml:lang="en-US">Weighted-Average Remaining Contractual Term (in years)</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Outstanding, Weighted Average Remaining Contractual Terms</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" xml:lang="en-US">Unvested at September 30, 2020</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm" xlink:label="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm" xml:lang="en-US">Share Based Compensation Arrangement by Share Based Payment Award Equity Instruments Other Than Options Vested and Expected to Vest Outstanding Weighted Average Remaining Contractual Term</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm" xml:lang="en-US">Vested and expected to vest at September 30, 2020</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm" xlink:to="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm" xml:lang="en-US">Share Based Compensation Arrangement by Share Based Payment Award Equity Instruments Other Than Options Vested and Expected to Vest Outstanding Weighted Average Remaining Contractual Term</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" xml:lang="en-US">Aggregate Intrinsic Value</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Outstanding</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" xml:lang="en-US">Unvested at September 30, 2020</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xml:lang="en-US">Share based Compensation Arrangement by Share based Payment Award, Equity Instruments Other Than Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xml:lang="en-US">Vested and expected to vest at September 30, 2020</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:to="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xml:lang="en-US">Share based Compensation Arrangement by Share based Payment Award, Equity Instruments Other Than Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xml:lang="en-US">Options Outstanding</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited in Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xml:lang="en-US">Forfeited/expired/cancelled</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xml:lang="en-US">Awarded</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xml:lang="en-US">Vested</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" xlink:label="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Vested And Expected To Vest Number</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" xml:lang="en-US">Vested and expected to vest at September 30, 2020</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" xlink:to="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Vested And Expected To Vest Number</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CommitmentsAndContingenciesTable" xlink:label="loc_rgen_CommitmentsAndContingenciesTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_CommitmentsAndContingenciesTable" xml:lang="en-US">Commitments and Contingencies [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_CommitmentsAndContingenciesTable" xml:lang="en-US">Commitments and Contingencies [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_CommitmentsAndContingenciesTable" xlink:to="lab_rgen_CommitmentsAndContingenciesTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_CommitmentsAndContingenciesTable" xml:lang="en-US">Commitments and Contingencies [Table]</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_AmendmentAxis" xlink:label="loc_rgen_AmendmentAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_AmendmentAxis" xml:lang="en-US">Amendment [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_AmendmentAxis" xml:lang="en-US">Amendment [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_AmendmentAxis" xlink:to="lab_rgen_AmendmentAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_AmendmentAxis" xml:lang="en-US">Amendment [Axis]</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_AmendmentDomain" xlink:label="loc_rgen_AmendmentDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_AmendmentDomain" xml:lang="en-US">Amendment [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_AmendmentDomain" xml:lang="en-US">Amendment [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_AmendmentDomain" xlink:to="lab_rgen_AmendmentDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_AmendmentDomain" xml:lang="en-US">Amendment [Domain]</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CommitmentsAndContingenciesLineItems" xlink:label="loc_rgen_CommitmentsAndContingenciesLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_CommitmentsAndContingenciesLineItems" xml:lang="en-US">Commitments and Contingencies [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_CommitmentsAndContingenciesLineItems" xml:lang="en-US">Commitments and Contingencies [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_CommitmentsAndContingenciesLineItems" xlink:to="lab_rgen_CommitmentsAndContingenciesLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_CommitmentsAndContingenciesLineItems" xml:lang="en-US">Commitments and Contingencies [Line Items]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermPurchaseCommitmentAmount" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermPurchaseCommitmentAmount" xml:lang="en-US">Long-term Purchase Commitment, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_LongTermPurchaseCommitmentAmount" xml:lang="en-US">Payments to Navigo in connection with this program, which are recorded to research and development expenses</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentAmount" xlink:to="lab_us-gaap_LongTermPurchaseCommitmentAmount" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_NGLImpactAMember" xlink:label="loc_rgen_NGLImpactAMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_NGLImpactAMember" xml:lang="en-US">NGL Impact A [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_NGLImpactAMember" xlink:to="lab_rgen_NGLImpactAMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_NGLImpactAMember" xml:lang="en-US">NGL Impact A[Member]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xml:lang="en-US">Category of Item Purchased [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:to="lab_us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xml:lang="en-US">Long-term Purchase Commitment, Category of Item Purchased [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:to="lab_us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentArrangementMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentArrangementMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ResearchAndDevelopmentArrangementMember" xml:lang="en-US">Research and Development Arrangement [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentArrangementMember" xlink:to="lab_us-gaap_ResearchAndDevelopmentArrangementMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xml:lang="en-US">Other comprehensive loss</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="loc_us-gaap_AccumulatedTranslationAdjustmentMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccumulatedTranslationAdjustmentMember" xml:lang="en-US">Accumulated Foreign Currency Adjustment Attributable to Parent [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_AccumulatedTranslationAdjustmentMember" xml:lang="en-US">Foreign Currency Translation Adjustment</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedTranslationAdjustmentMember" xlink:to="lab_us-gaap_AccumulatedTranslationAdjustmentMember" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IncomeTaxesTable" xlink:label="loc_rgen_IncomeTaxesTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_IncomeTaxesTable" xml:lang="en-US">Income Taxes [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_IncomeTaxesTable" xml:lang="en-US">Income Taxes [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_IncomeTaxesTable" xlink:to="lab_rgen_IncomeTaxesTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_IncomeTaxesTable" xml:lang="en-US">Income Taxes [Table]</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IncomeTaxesLineItems" xlink:label="loc_rgen_IncomeTaxesLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_IncomeTaxesLineItems" xml:lang="en-US">Income Taxes [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_IncomeTaxesLineItems" xml:lang="en-US">Income Taxes [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_IncomeTaxesLineItems" xlink:to="lab_rgen_IncomeTaxesLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_IncomeTaxesLineItems" xml:lang="en-US">Income Taxes [Line Items]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xml:lang="en-US">Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xml:lang="en-US">Corporate tax rate</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xml:lang="en-US">Income tax (benefit) provision</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_StatementGeographicalAxis" xml:lang="en-US">Geographical [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_StatementGeographicalAxis" xml:lang="en-US">Geographical [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_StatementGeographicalAxis" xlink:to="lab_srt_StatementGeographicalAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_SegmentGeographicalDomain" xml:lang="en-US">Geographical [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_SegmentGeographicalDomain" xml:lang="en-US">Geographical [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_SegmentGeographicalDomain" xlink:to="lab_srt_SegmentGeographicalDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxPeriodAxis" xlink:label="loc_us-gaap_TaxPeriodAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TaxPeriodAxis" xml:lang="en-US">Tax Period [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_TaxPeriodAxis" xml:lang="en-US">Tax Period [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TaxPeriodAxis" xlink:to="lab_us-gaap_TaxPeriodAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxPeriodDomain" xlink:label="loc_us-gaap_TaxPeriodDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_TaxPeriodDomain" xml:lang="en-US">Tax Period [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_TaxPeriodDomain" xml:lang="en-US">Tax Period [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TaxPeriodDomain" xlink:to="lab_us-gaap_TaxPeriodDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExaminationTable" xlink:label="loc_us-gaap_IncomeTaxExaminationTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxExaminationTable" xml:lang="en-US">Income Tax Examination [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxExaminationTable" xml:lang="en-US">Income Tax Examination [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExaminationTable" xlink:to="lab_us-gaap_IncomeTaxExaminationTable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExaminationLineItems" xlink:label="loc_us-gaap_IncomeTaxExaminationLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncomeTaxExaminationLineItems" xml:lang="en-US">Income Tax Examination [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncomeTaxExaminationLineItems" xml:lang="en-US">Income Tax Examination [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExaminationLineItems" xlink:to="lab_us-gaap_IncomeTaxExaminationLineItems" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OpenTaxYear" xlink:label="loc_us-gaap_OpenTaxYear" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OpenTaxYear" xml:lang="en-US">Open Tax Year</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OpenTaxYear" xml:lang="en-US">Fiscal year subject to examination</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OpenTaxYear" xlink:to="lab_us-gaap_OpenTaxYear" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_DE" xlink:label="loc_country_DE" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_country_DE" xml:lang="en-US">GERMANY</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_country_DE" xml:lang="en-US">Germany</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_DE" xlink:to="lab_country_DE" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_NL" xlink:label="loc_country_NL" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_country_NL" xml:lang="en-US">NETHERLANDS</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_country_NL" xml:lang="en-US">Netherlands</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_NL" xlink:to="lab_country_NL" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_SE" xlink:label="loc_country_SE" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_country_SE" xml:lang="en-US">SWEDEN</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_country_SE" xml:lang="en-US">Sweden</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_SE" xlink:to="lab_country_SE" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_US" xlink:label="loc_country_US" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_country_US" xml:lang="en-US">UNITED STATES</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_country_US" xml:lang="en-US">United States</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_US" xlink:to="lab_country_US" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarliestTaxYearMember" xlink:label="loc_us-gaap_EarliestTaxYearMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EarliestTaxYearMember" xml:lang="en-US">Earliest Tax Year [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EarliestTaxYearMember" xml:lang="en-US">Earliest Tax Year</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarliestTaxYearMember" xlink:to="lab_us-gaap_EarliestTaxYearMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LatestTaxYearMember" xlink:label="loc_us-gaap_LatestTaxYearMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_LatestTaxYearMember" xml:lang="en-US">Latest Tax Year [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_LatestTaxYearMember" xml:lang="en-US">Latest Tax Year</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LatestTaxYearMember" xlink:to="lab_us-gaap_LatestTaxYearMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xml:lang="en-US">Common stock excluded from calculation of diluted earnings per share</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ReconciliationOfBasicAndDilutedSharesAbstract" xlink:label="loc_rgen_ReconciliationOfBasicAndDilutedSharesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ReconciliationOfBasicAndDilutedSharesAbstract" xml:lang="en-US">Reconciliation of Basic and Diluted Shares [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ReconciliationOfBasicAndDilutedSharesAbstract" xlink:to="lab_rgen_ReconciliationOfBasicAndDilutedSharesAbstract" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" xlink:label="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" xml:lang="en-US">Schedule Of Earnings Per Share Basic And Diluted [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" xml:lang="en-US">Schedule Of Earnings Per Share Basic And Diluted [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" xlink:to="lab_rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" xml:lang="en-US">Schedule Of Earnings Per Share Basic And Diluted [Table]</label>
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:label="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xml:lang="en-US">Schedule Of Earnings Per Share Basic And Diluted [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xml:lang="en-US">Schedule Of Earnings Per Share Basic And Diluted [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:to="lab_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xml:lang="en-US">Schedule Of Earnings Per Share Basic And Diluted [Line Items]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DilutiveSecuritiesAbstract" xlink:label="loc_us-gaap_DilutiveSecuritiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DilutiveSecuritiesAbstract" xml:lang="en-US">Dilutive Securities, Effect on Basic Earnings Per Share [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_DilutiveSecuritiesAbstract" xml:lang="en-US">Effect of dilutive shares:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DilutiveSecuritiesAbstract" xlink:to="lab_us-gaap_DilutiveSecuritiesAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesRestrictedStock" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesRestrictedStock" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesRestrictedStock" xml:lang="en-US">Weighted Average Number of Shares, Restricted Stock</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesRestrictedStock" xml:lang="en-US">Stock options and restricted stock awards</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesRestrictedStock" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesRestrictedStock" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" xml:lang="en-US">Incremental Common Shares Attributable to Dilutive Effect of Conversion of Debt Securities</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" xml:lang="en-US">Dilutive effect of unvested performance stock units</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" xlink:to="lab_us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xml:lang="en-US">Weighted Average Number Diluted Shares Outstanding Adjustment</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xml:lang="en-US">Dilutive potential common shares</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:label="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract" xml:lang="en-US">Earnings Per Share, Basic and Diluted [Abstract]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract" xml:lang="en-US">Earnings per share:</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:to="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfRelatedPartyTable" xlink:label="loc_rgen_ScheduleOfRelatedPartyTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ScheduleOfRelatedPartyTable" xml:lang="en-US">Schedule Of Related Party [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_ScheduleOfRelatedPartyTable" xml:lang="en-US">Schedule Of Related Party [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable" xlink:to="lab_rgen_ScheduleOfRelatedPartyTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ScheduleOfRelatedPartyTable" xml:lang="en-US">Schedule Of Related Party [Table]</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="loc_us-gaap_RelatedPartyTransactionLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RelatedPartyTransactionLineItems" xml:lang="en-US">Related Party Transaction [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RelatedPartyTransactionLineItems" xml:lang="en-US">Related Party Transaction [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems" xlink:to="lab_us-gaap_RelatedPartyTransactionLineItems" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="loc_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xml:lang="en-US">Noncontrolling Interest, Ownership Percentage by Noncontrolling Owners</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xml:lang="en-US">Non controlling ownership interest minimum</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:to="lab_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesRentExpenseNet" xlink:label="loc_us-gaap_OperatingLeasesRentExpenseNet" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_OperatingLeasesRentExpenseNet" xml:lang="en-US">Operating Leases, Rent Expense, Net</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_OperatingLeasesRentExpenseNet" xml:lang="en-US">Rent expense</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesRentExpenseNet" xlink:to="lab_us-gaap_OperatingLeasesRentExpenseNet" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xml:lang="en-US">Related Party [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xml:lang="en-US">Related Party [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="lab_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaap_RelatedPartyDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RelatedPartyDomain" xml:lang="en-US">Related Party [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_RelatedPartyDomain" xml:lang="en-US">Related Party [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyDomain" xlink:to="lab_us-gaap_RelatedPartyDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrincipalOwnerMember" xlink:label="loc_us-gaap_PrincipalOwnerMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PrincipalOwnerMember" xml:lang="en-US">Principal Owner [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PrincipalOwnerMember" xml:lang="en-US">Principal Owner</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrincipalOwnerMember" xlink:to="lab_us-gaap_PrincipalOwnerMember" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_SpectrumIncMember" xlink:label="loc_rgen_SpectrumIncMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_SpectrumIncMember" xml:lang="en-US">Spectrum Inc [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_SpectrumIncMember" xml:lang="en-US">Spectrum Inc.</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_SpectrumIncMember" xml:lang="en-US">Spectrum Inc.</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_SpectrumIncMember" xlink:to="lab_rgen_SpectrumIncMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_SpectrumIncMember" xml:lang="en-US">Spectrum Inc.</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipAxis" xlink:label="loc_srt_OwnershipAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_OwnershipAxis" xml:lang="en-US">Ownership [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_OwnershipAxis" xlink:to="lab_srt_OwnershipAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srt_OwnershipDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_OwnershipDomain" xml:lang="en-US">Ownership [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_OwnershipDomain" xlink:to="lab_srt_OwnershipDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SubsidiarySaleOfStockAxis" xml:lang="en-US">Sale of Stock [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis" xlink:to="lab_us-gaap_SubsidiarySaleOfStockAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SaleOfStockNameOfTransactionDomain" xml:lang="en-US">Sale of Stock [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain" xlink:to="lab_us-gaap_SaleOfStockNameOfTransactionDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfProductInformationTable" xlink:label="loc_us-gaap_ScheduleOfProductInformationTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfProductInformationTable" xml:lang="en-US">Schedule of Product Information [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfProductInformationTable" xlink:to="lab_us-gaap_ScheduleOfProductInformationTable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis" xml:lang="en-US">Concentration Risk Type [Axis]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis" xml:lang="en-US">Concentration Risk Type [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis" xlink:to="lab_us-gaap_ConcentrationRiskByTypeAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain" xml:lang="en-US">Concentration Risk Type [Domain]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain" xml:lang="en-US">Concentration Risk Type [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain" xlink:to="lab_us-gaap_ConcentrationRiskTypeDomain" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_CustomerConcentrationRiskMember" xml:lang="en-US">Customer Concentration Risk [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_CustomerConcentrationRiskMember" xml:lang="en-US">Customer Concentration Risk</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerConcentrationRiskMember" xlink:to="lab_us-gaap_CustomerConcentrationRiskMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="loc_us-gaap_NumberOfOperatingSegments" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_NumberOfOperatingSegments" xml:lang="en-US">Number of Operating Segments</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_NumberOfOperatingSegments" xml:lang="en-US">Number of operating segments</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfOperatingSegments" xlink:to="lab_us-gaap_NumberOfOperatingSegments" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xml:lang="en-US">Concentration Risk, Percentage</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xml:lang="en-US">Accounts receivable, percentage by customer</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/positiveLabel" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xml:lang="en-US">Revenues, percentage by country</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xml:lang="en-US">Revenue from significant customers</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskPercentage1" xlink:to="lab_us-gaap_ConcentrationRiskPercentage1" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="loc_us-gaap_AccountsReceivableMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_AccountsReceivableMember" xml:lang="en-US">Accounts Receivable [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_AccountsReceivableMember" xml:lang="en-US">Accounts Receivable</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableMember" xlink:to="lab_us-gaap_AccountsReceivableMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RisksAndUncertaintiesAbstract" xlink:label="loc_us-gaap_RisksAndUncertaintiesAbstract" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_RisksAndUncertaintiesAbstract" xml:lang="en-US">Risks and Uncertainties [Abstract]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RisksAndUncertaintiesAbstract" xlink:to="lab_us-gaap_RisksAndUncertaintiesAbstract" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="loc_us-gaap_GeographicConcentrationRiskMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_GeographicConcentrationRiskMember" xml:lang="en-US">Geographic Concentration Risk [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_GeographicConcentrationRiskMember" xml:lang="en-US">Geographic Concentration Risk</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeographicConcentrationRiskMember" xlink:to="lab_us-gaap_GeographicConcentrationRiskMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NorthAmericaMember" xlink:label="loc_srt_NorthAmericaMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_NorthAmericaMember" xml:lang="en-US">North America [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_NorthAmericaMember" xml:lang="en-US">North America</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_NorthAmericaMember" xlink:to="lab_srt_NorthAmericaMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_EuropeMember" xlink:label="loc_srt_EuropeMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_srt_EuropeMember" xml:lang="en-US">Europe [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_srt_EuropeMember" xml:lang="en-US">Europe</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_EuropeMember" xlink:to="lab_srt_EuropeMember" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ApacOtherMember" xlink:label="loc_rgen_ApacOtherMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ApacOtherMember" xml:lang="en-US">APAC Other [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_rgen_ApacOtherMember" xml:lang="en-US">APAC/Other</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ApacOtherMember" xlink:to="lab_rgen_ApacOtherMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xlink:label="loc_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xml:lang="en-US">Schedule of Revenue by Major Customers, by Reporting Segments [Table]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xml:lang="en-US">Schedule of Revenue by Major Customers, by Reporting Segments [Table]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xlink:to="lab_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EntityWideRevenueMajorCustomerLineItems" xlink:label="loc_us-gaap_EntityWideRevenueMajorCustomerLineItems" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_EntityWideRevenueMajorCustomerLineItems" xml:lang="en-US">Revenue, Major Customer [Line Items]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_EntityWideRevenueMajorCustomerLineItems" xml:lang="en-US">Revenue, Major Customer [Line Items]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EntityWideRevenueMajorCustomerLineItems" xlink:to="lab_us-gaap_EntityWideRevenueMajorCustomerLineItems" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross" xml:lang="en-US">Payments to Acquire Businesses, Gross</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross" xml:lang="en-US">Cash consideration</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesGross" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesGross" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" xml:lang="en-US">Business Combination, Consideration Transferred, Equity Interests Issued and Issuable</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" xml:lang="en-US">Value of common stock issued</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" xlink:to="lab_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ArtesynBiosolutionsMember" xlink:label="loc_rgen_ArtesynBiosolutionsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_rgen_ArtesynBiosolutionsMember" xml:lang="en-US">ARTeSYN Biosolutions [Member]</label>
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="lab_rgen_ArtesynBiosolutionsMember" xml:lang="en-US">ARTeSYN Biosolutions [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_rgen_ArtesynBiosolutionsMember" xlink:to="lab_rgen_ArtesynBiosolutionsMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="lab_rgen_ArtesynBiosolutionsMember" xml:lang="en-US">ARTeSYN Biosolutions</label>
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventMember" xlink:label="loc_us-gaap_SubsequentEventMember" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_SubsequentEventMember" xml:lang="en-US">Subsequent Event [Member]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventMember" xlink:to="lab_us-gaap_SubsequentEventMember" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtConversionByUniqueDescriptionAxis" xlink:label="loc_us-gaap_DebtConversionByUniqueDescriptionAxis" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtConversionByUniqueDescriptionAxis" xml:lang="en-US">Debt Conversion Description [Axis]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtConversionByUniqueDescriptionAxis" xlink:to="lab_us-gaap_DebtConversionByUniqueDescriptionAxis" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtConversionNameDomain" xlink:label="loc_us-gaap_DebtConversionNameDomain" />
<label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="lab_us-gaap_DebtConversionNameDomain" xml:lang="en-US">Debt Conversion, Name [Domain]</label>
<labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtConversionNameDomain" xlink:to="lab_us-gaap_DebtConversionNameDomain" />
</labelLink>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>9
<FILENAME>rgen-20200930_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by DFIN XBRL Instance Document - http://www.dfinsolutions.com/ - Version R3.0 - on 04-November-2020 [01:20:39] {PM}-->
<linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#CoverPage" roleURI="http://www.repligencorp.com/role/CoverPage" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedBalanceSheets" roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheets" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedBalanceSheetsParenthetical" roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedStatementsOfComprehensiveIncomeLoss" roleURI="http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedStatementsOfStockholdersEquity" roleURI="http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedStatementsOfStockholdersEquityParenthetical" roleURI="http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedStatementsOfCashFlows" roleURI="http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfSignificantAccountingPolicies" roleURI="http://www.repligencorp.com/role/SummaryOfSignificantAccountingPolicies" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#FairValueMeasurements" roleURI="http://www.repligencorp.com/role/FairValueMeasurements" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#Acquisitions" roleURI="http://www.repligencorp.com/role/Acquisitions" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#RevenueRecognition" roleURI="http://www.repligencorp.com/role/RevenueRecognition" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#CreditLosses" roleURI="http://www.repligencorp.com/role/CreditLosses" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#GoodwillAndIntangibleAssets" roleURI="http://www.repligencorp.com/role/GoodwillAndIntangibleAssets" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedBalanceSheetDetail" roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConvertibleSeniorNotes" roleURI="http://www.repligencorp.com/role/ConvertibleSeniorNotes" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#StockholdersEquity" roleURI="http://www.repligencorp.com/role/StockholdersEquity" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#CommitmentsAndContingencies" roleURI="http://www.repligencorp.com/role/CommitmentsAndContingencies" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AccumulatedOtherComprehensiveLoss" roleURI="http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLoss" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#IncomeTaxes" roleURI="http://www.repligencorp.com/role/IncomeTaxes" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#EarningsPerShare" roleURI="http://www.repligencorp.com/role/EarningsPerShare" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#RelatedPartyTransactions" roleURI="http://www.repligencorp.com/role/RelatedPartyTransactions" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SegmentReporting" roleURI="http://www.repligencorp.com/role/SegmentReporting" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SubsequentEvents" roleURI="http://www.repligencorp.com/role/SubsequentEvents" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfSignificantAccountingPoliciesPolicies" roleURI="http://www.repligencorp.com/role/SummaryOfSignificantAccountingPoliciesPolicies" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AcquisitionsTables" roleURI="http://www.repligencorp.com/role/AcquisitionsTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#RevenueRecognitionTables" roleURI="http://www.repligencorp.com/role/RevenueRecognitionTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#CreditLossesTables" roleURI="http://www.repligencorp.com/role/CreditLossesTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#GoodwillAndIntangibleAssetsTables" roleURI="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedBalanceSheetDetailTables" roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetailTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConvertibleSeniorNotesTables" roleURI="http://www.repligencorp.com/role/ConvertibleSeniorNotesTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#StockholdersEquityTables" roleURI="http://www.repligencorp.com/role/StockholdersEquityTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AccumulatedOtherComprehensiveLossTables" roleURI="http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLossTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#IncomeTaxesTables" roleURI="http://www.repligencorp.com/role/IncomeTaxesTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#EarningsPerShareTables" roleURI="http://www.repligencorp.com/role/EarningsPerShareTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SegmentReportingTables" roleURI="http://www.repligencorp.com/role/SegmentReportingTables" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#FairValueMeasurementAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AcquisitionsAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AcquisitionsFairValueOfNetAssetsAcquiredDetail" roleURI="http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AcquisitionsEstimatedUsefulLifeAndFairValueDetail" roleURI="http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AcquisitionsUnauditedSupplementalProFormaInformationDetail" roleURI="http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail" roleURI="http://www.repligencorp.com/role/SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#RevenueFromSignificantCustomersDetail" roleURI="http://www.repligencorp.com/role/RevenueFromSignificantCustomersDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail" roleURI="http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#CreditLossesAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/CreditLossesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#CreditLossesSummaryOfAllowanceForCreditLossesForAccountsReceivablesDetail" roleURI="http://www.repligencorp.com/role/CreditLossesSummaryOfAllowanceForCreditLossesForAccountsReceivablesDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ChangesInCarryingValueOfGoodwillDetail" roleURI="http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#GoodwillAndIntangibleAssetsDetail" roleURI="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#GoodwillAndIntangibleAssetsAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#AmortizationExpenseForAmortizedIntangibleAssetsDetail" roleURI="http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ScheduleOfInventoriesDetail" roleURI="http://www.repligencorp.com/role/ScheduleOfInventoriesDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#PropertyPlantAndEquipmentDetail" roleURI="http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConsolidatedBalanceSheetAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ScheduleOfAccruedLiabilitiesDetail" roleURI="http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConvertibleSeniorNotesAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ConvertibleSeniorNotesConvertibleDebtDetail" roleURI="http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#StockholdersEquityAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#StockBasedCompensationExpenseDetail" roleURI="http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfOptionActivityDetail" roleURI="http://www.repligencorp.com/role/SummaryOfOptionActivityDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfOptionActivityParentheticalDetail" roleURI="http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfRestrictedStockUnitActivityDetail" roleURI="http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfRestrictedStockUnitActivityParentheticalDetail" roleURI="http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#CommitmentsAndContingenciesAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#ChangeInAccumulatedOtherComprehensiveLossDetail" roleURI="http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#IncomeTaxesAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail" roleURI="http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#EarningsPerShareAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" roleURI="http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#RelatedPartyTransactionsAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SegmentReportingAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SegmentReportingPercentageOfRevenueByGeographicAreaDetails" roleURI="http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail" roleURI="http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail" />
<roleRef xlink:type="simple" xlink:href="rgen-20200930.xsd#SubsequentEventsAdditionalInformationDetail" roleURI="http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail" />
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/CoverPage">
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CoverAbstract" xlink:label="loc_dei_CoverAbstract_187796" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_AmendmentFlag" xlink:label="loc_dei_AmendmentFlag_187819" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_AmendmentFlag_187819" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentType" xlink:label="loc_dei_DocumentType_464304" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_DocumentType_464304" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_dei_DocumentFiscalYearFocus_187828" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_DocumentFiscalYearFocus_187828" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_dei_DocumentFiscalPeriodFocus_187829" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_DocumentFiscalPeriodFocus_187829" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCentralIndexKey" xlink:label="loc_dei_EntityCentralIndexKey_187845" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityCentralIndexKey_187845" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_dei_CurrentFiscalYearEndDate_187852" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_CurrentFiscalYearEndDate_187852" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate_464303" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_DocumentPeriodEndDate_464303" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_dei_EntityCurrentReportingStatus_464305" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityCurrentReportingStatus_464305" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_dei_EntityInteractiveDataCurrent_464309" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityInteractiveDataCurrent_464309" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFileNumber" xlink:label="loc_dei_EntityFileNumber_464934" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityFileNumber_464934" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityRegistrantName" xlink:label="loc_dei_EntityRegistrantName_464307" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityRegistrantName_464307" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFilerCategory" xlink:label="loc_dei_EntityFilerCategory_464355" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityFilerCategory_464355" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_TradingSymbol" xlink:label="loc_dei_TradingSymbol_464313" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_TradingSymbol_464313" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_Security12bTitle" xlink:label="loc_dei_Security12bTitle_464312" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_Security12bTitle_464312" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_SecurityExchangeName" xlink:label="loc_dei_SecurityExchangeName_464314" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_SecurityExchangeName_464314" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_dei_EntityIncorporationStateCountryCode_464315" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityIncorporationStateCountryCode_464315" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_dei_EntityTaxIdentificationNumber_464316" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityTaxIdentificationNumber_464316" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_dei_EntityAddressAddressLine1_464317" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityAddressAddressLine1_464317" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_dei_EntityAddressCityOrTown_464319" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityAddressCityOrTown_464319" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_dei_EntityAddressStateOrProvince_464320" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityAddressStateOrProvince_464320" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_dei_EntityAddressPostalZipCode_464322" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityAddressPostalZipCode_464322" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CityAreaCode" xlink:label="loc_dei_CityAreaCode_464323" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_CityAreaCode_464323" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityShellCompany" xlink:label="loc_dei_EntityShellCompany_464325" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityShellCompany_464325" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntitySmallBusiness" xlink:label="loc_dei_EntitySmallBusiness_464326" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntitySmallBusiness_464326" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_dei_EntityEmergingGrowthCompany_464327" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityEmergingGrowthCompany_464327" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LocalPhoneNumber" xlink:label="loc_dei_LocalPhoneNumber_464336" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_LocalPhoneNumber_464336" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentQuarterlyReport" xlink:label="loc_dei_DocumentQuarterlyReport_464337" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_DocumentQuarterlyReport_464337" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentTransitionReport" xlink:label="loc_dei_DocumentTransitionReport_464338" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_DocumentTransitionReport_464338" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_464311" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_187796" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_464311" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/label" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedBalanceSheets">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_23" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_30" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_23" xlink:to="loc_us-gaap_StatementTable_30" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_26" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_30" xlink:to="loc_dei_LegalEntityAxis_26" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_45" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_26" xlink:to="loc_dei_EntityDomain_45" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_29" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_30" xlink:to="loc_us-gaap_StatementLineItems_29" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaap_AssetsAbstract_24" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_29" xlink:to="loc_us-gaap_AssetsAbstract_24" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaap_AssetsCurrentAbstract_25" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_AssetsCurrentAbstract_25" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_38" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_38" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedCash" xlink:label="loc_us-gaap_RestrictedCash_465032" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_RestrictedCash_465032" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_40" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_40" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherReceivablesGrossCurrent" xlink:label="loc_us-gaap_OtherReceivablesGrossCurrent_41" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_OtherReceivablesGrossCurrent_41" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnbilledReceivablesCurrent" xlink:label="loc_us-gaap_UnbilledReceivablesCurrent_329075" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_UnbilledReceivablesCurrent_329075" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_42" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_InventoryNet_42" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_43" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_43" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent_44" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_25" xlink:to="loc_us-gaap_AssetsCurrent_44" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_32" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_32" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_33" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_33" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_34" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_Goodwill_34" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_332951" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_332951" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_409898" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_409898" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_36" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_36" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_37" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_24" xlink:to="loc_us-gaap_Assets_37" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_29" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_28" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_28" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent_51" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_28" xlink:to="loc_us-gaap_AccountsPayableCurrent_51" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_409907" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_28" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_409907" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_52" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_28" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_52" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent_53" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_28" xlink:to="loc_us-gaap_LiabilitiesCurrent_53" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleLongTermNotesPayable" xlink:label="loc_us-gaap_ConvertibleLongTermNotesPayable_46" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_ConvertibleLongTermNotesPayable_46" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent" xlink:label="loc_us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent_47" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent_47" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_409908" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_409908" use="optional" order="30" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_48" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_48" use="optional" order="31" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaap_Liabilities_309583" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_Liabilities_309583" use="optional" order="32" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="loc_us-gaap_CommitmentsAndContingencies_49" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_CommitmentsAndContingencies_49" use="optional" order="33" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="loc_us-gaap_StockholdersEquityAbstract_31" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_StockholdersEquityAbstract_31" use="optional" order="34" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaap_PreferredStockValue_54" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_31" xlink:to="loc_us-gaap_PreferredStockValue_54" use="optional" order="35" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaap_CommonStockValue_55" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_31" xlink:to="loc_us-gaap_CommonStockValue_55" use="optional" order="36" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_56" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_31" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_56" use="optional" order="37" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_57" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_31" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_57" use="optional" order="38" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_58" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_31" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_58" use="optional" order="39" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_59" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_31" xlink:to="loc_us-gaap_StockholdersEquity_59" use="optional" order="40" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_50" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_27" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_50" use="optional" order="41" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_61" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_64" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_61" xlink:to="loc_us-gaap_StatementTable_64" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_62" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_64" xlink:to="loc_dei_LegalEntityAxis_62" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_65" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_62" xlink:to="loc_dei_EntityDomain_65" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_63" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_64" xlink:to="loc_us-gaap_StatementLineItems_63" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_66" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_66" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_67" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_PreferredStockParOrStatedValuePerShare_67" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_68" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_68" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="loc_us-gaap_PreferredStockSharesIssued_69" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_PreferredStockSharesIssued_69" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding_70" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_PreferredStockSharesOutstanding_70" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_71" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_71" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_72" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_72" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_73" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_CommonStockSharesIssued_73" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_74" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_63" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_74" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaap_IncomeStatementAbstract_76" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_83" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_76" xlink:to="loc_us-gaap_StatementTable_83" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_79" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_83" xlink:to="loc_dei_LegalEntityAxis_79" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_92" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_79" xlink:to="loc_dei_EntityDomain_92" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_284889" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_83" xlink:to="loc_srt_ProductOrServiceAxis_284889" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_284890" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_284889" xlink:to="loc_srt_ProductsAndServicesDomain_284890" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductMember" xlink:label="loc_us-gaap_ProductMember_284891" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_284890" xlink:to="loc_us-gaap_ProductMember_284891" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RoyaltyMember" xlink:label="loc_us-gaap_RoyaltyMember_284892" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_284890" xlink:to="loc_us-gaap_RoyaltyMember_284892" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_82" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_83" xlink:to="loc_us-gaap_StatementLineItems_82" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaap_RevenuesAbstract_81" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_RevenuesAbstract_81" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_284893" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesAbstract_81" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_284893" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostsAndExpensesAbstract" xlink:label="loc_us-gaap_CostsAndExpensesAbstract_77" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_CostsAndExpensesAbstract_77" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_85" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostsAndExpensesAbstract_77" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_85" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_86" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostsAndExpensesAbstract_77" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_86" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_87" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostsAndExpensesAbstract_77" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_87" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostsAndExpenses" xlink:label="loc_us-gaap_CostsAndExpenses_89" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostsAndExpensesAbstract_77" xlink:to="loc_us-gaap_CostsAndExpenses_89" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_98" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_OperatingIncomeLoss_98" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpenseAbstract" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_311282" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_311282" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentIncomeNet" xlink:label="loc_us-gaap_InvestmentIncomeNet_99" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_311282" xlink:to="loc_us-gaap_InvestmentIncomeNet_99" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_499298" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_311282" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_499298" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestExpense" xlink:label="loc_us-gaap_InterestExpense_100" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_311282" xlink:to="loc_us-gaap_InterestExpense_100" use="optional" order="20" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_101" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_311282" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_101" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaap_NonoperatingIncomeExpense_309667" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseAbstract_311282" xlink:to="loc_us-gaap_NonoperatingIncomeExpense_309667" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_102" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_102" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_103" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_103" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_104" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_NetIncomeLoss_104" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_78" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_EarningsPerShareAbstract_78" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic_90" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_78" xlink:to="loc_us-gaap_EarningsPerShareBasic_90" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_91" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_78" xlink:to="loc_us-gaap_EarningsPerShareDiluted_91" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_84" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_84" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/presentationGuidance" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_106" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_84" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_106" use="optional" order="30" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_107" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_84" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_107" use="optional" order="31" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_311283" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_NetIncomeLoss_311283" use="optional" order="32" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_80" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_80" use="optional" order="33" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_94" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_80" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_94" use="optional" order="34" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_105" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_82" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_105" use="optional" order="35" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_109" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_114" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_109" xlink:to="loc_us-gaap_StatementTable_114" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_112" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_114" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_112" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_110" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_112" xlink:to="loc_us-gaap_EquityComponentDomain_110" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_115" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_110" xlink:to="loc_us-gaap_CommonStockMember_115" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_116" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_110" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_116" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_117" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_110" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_117" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember_118" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_110" xlink:to="loc_us-gaap_RetainedEarningsMember_118" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_111" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_114" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_111" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_111" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_119" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_113" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_114" xlink:to="loc_us-gaap_StatementLineItems_113" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_121" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockholdersEquity_121" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaap_SharesOutstanding_120" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_SharesOutstanding_120" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_122" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_NetIncomeLoss_122" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfUnits" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfUnits_329130" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfUnits_329130" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits_329131" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits_329131" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt" xlink:label="loc_rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt_499299" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt_499299" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_133" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_133" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_134" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_134" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueAcquisitions_309720" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueAcquisitions_309720" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesAcquisitions_309721" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesAcquisitions_309721" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_499301" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_499301" use="optional" order="21" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_499300" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_499300" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt_499302" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt_499302" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues_128" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues_128" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_130" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_130" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_132" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_132" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax_309722" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax_309722" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_136" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_StockholdersEquity_136" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaap_SharesOutstanding_135" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_113" xlink:to="loc_us-gaap_SharesOutstanding_135" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_138" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_141" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_138" xlink:to="loc_us-gaap_StatementTable_141" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_139" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_141" xlink:to="loc_dei_LegalEntityAxis_139" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_142" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_139" xlink:to="loc_dei_EntityDomain_142" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_499304" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_141" xlink:to="loc_us-gaap_DebtInstrumentAxis_499304" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_499305" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_499304" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_499305" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="loc_rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember_499358" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_499305" xlink:to="loc_rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember_499358" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_140" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_141" xlink:to="loc_us-gaap_StatementLineItems_140" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_143" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_140" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_143" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/presentationGuidance" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_499303" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_140" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_499303" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_145" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_155" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_145" xlink:to="loc_us-gaap_StatementTable_155" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_150" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_155" xlink:to="loc_dei_LegalEntityAxis_150" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_174" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_150" xlink:to="loc_dei_EntityDomain_174" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_148" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_155" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_148" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_147" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_148" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_147" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_154" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_155" xlink:to="loc_us-gaap_StatementLineItems_154" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_153" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_153" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_187" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_153" xlink:to="loc_us-gaap_NetIncomeLoss_187" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_153" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationAndAmortization" xlink:label="loc_us-gaap_DepreciationAndAmortization_157" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" xlink:to="loc_us-gaap_DepreciationAndAmortization_157" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfDebtDiscountPremium" xlink:label="loc_us-gaap_AmortizationOfDebtDiscountPremium_158" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" xlink:to="loc_us-gaap_AmortizationOfDebtDiscountPremium_158" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_159" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" xlink:to="loc_us-gaap_ShareBasedCompensation_159" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_160" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_160" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_499308" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_499308" use="optional" order="14" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="loc_us-gaap_OtherNoncashIncomeExpense_312093" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_146" xlink:to="loc_us-gaap_OtherNoncashIncomeExpense_312093" use="optional" order="15" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_153" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_167" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_167" use="optional" order="17" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherReceivables" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherReceivables_168" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherReceivables_168" use="optional" order="18" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:label="loc_us-gaap_IncreaseDecreaseInContractWithCustomerAsset_329139" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInContractWithCustomerAsset_329139" use="optional" order="19" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_169" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_169" use="optional" order="20" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_170" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_170" use="optional" order="21" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset" xlink:label="loc_rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset_422198" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset_422198" use="optional" order="22" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_467874" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_467874" use="optional" order="23" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_171" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_171" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_172" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_172" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IncreasedecreaseInOperatingLeaseLiability" xlink:label="loc_rgen_IncreasedecreaseInOperatingLeaseLiability_422204" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_rgen_IncreasedecreaseInOperatingLeaseLiability_422204" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities_173" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_149" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities_173" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_188" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_153" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_188" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_152" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_152" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_182" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_152" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_182" use="optional" order="30" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireSoftware" xlink:label="loc_us-gaap_PaymentsToAcquireSoftware_329140" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_152" xlink:to="loc_us-gaap_PaymentsToAcquireSoftware_329140" use="optional" order="31" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_185" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_152" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_185" use="optional" order="32" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_186" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_152" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_186" use="optional" order="33" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" use="optional" order="34" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised_177" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" xlink:to="loc_us-gaap_ProceedsFromStockOptionsExercised_177" use="optional" order="35" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_499309" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_499309" use="optional" order="36" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromConvertibleDebt" xlink:label="loc_us-gaap_ProceedsFromConvertibleDebt_175" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" xlink:to="loc_us-gaap_ProceedsFromConvertibleDebt_175" use="optional" order="37" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_176" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_176" use="optional" order="38" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RepaymentsOfConvertibleDebt" xlink:label="loc_us-gaap_RepaymentsOfConvertibleDebt_309772" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" xlink:to="loc_us-gaap_RepaymentsOfConvertibleDebt_309772" use="optional" order="39" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_179" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_151" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_179" use="optional" order="40" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_189" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_189" use="optional" order="41" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_190" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_190" use="optional" order="42" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_191" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_191" use="optional" order="43" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_192" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_192" use="optional" order="44" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SupplementalCashFlowElementsAbstract" xlink:label="loc_us-gaap_SupplementalCashFlowElementsAbstract_309774" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_154" xlink:to="loc_us-gaap_SupplementalCashFlowElementsAbstract_309774" use="optional" order="45" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_AssetsAcquiredUnderOperatingLeases" xlink:label="loc_rgen_AssetsAcquiredUnderOperatingLeases_681339" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SupplementalCashFlowElementsAbstract_309774" xlink:to="loc_rgen_AssetsAcquiredUnderOperatingLeases_681339" use="optional" order="46" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentAmount1" xlink:label="loc_us-gaap_DebtConversionConvertedInstrumentAmount1_499310" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SupplementalCashFlowElementsAbstract_309774" xlink:to="loc_us-gaap_DebtConversionConvertedInstrumentAmount1_499310" use="optional" order="47" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssued1" xlink:label="loc_us-gaap_StockIssued1_309806" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SupplementalCashFlowElementsAbstract_309774" xlink:to="loc_us-gaap_StockIssued1_309806" use="optional" order="48" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfSignificantAccountingPolicies">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_1161" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1164" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1161" xlink:to="loc_us-gaap_StatementTable_1164" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1162" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1164" xlink:to="loc_dei_LegalEntityAxis_1162" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1165" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1162" xlink:to="loc_dei_EntityDomain_1165" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1163" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1164" xlink:to="loc_us-gaap_StatementLineItems_1163" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_1166" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1163" xlink:to="loc_us-gaap_SignificantAccountingPoliciesTextBlock_1166" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/FairValueMeasurements">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="loc_us-gaap_DisclosureTextBlockAbstract_409160" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_411814" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureTextBlockAbstract_409160" xlink:to="loc_us-gaap_StatementTable_411814" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_411817" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_411814" xlink:to="loc_us-gaap_StatementLineItems_411817" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock_409161" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_411817" xlink:to="loc_us-gaap_FairValueDisclosuresTextBlock_409161" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/Acquisitions">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TextBlockAbstract" xlink:label="loc_us-gaap_TextBlockAbstract_1222" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1225" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TextBlockAbstract_1222" xlink:to="loc_us-gaap_StatementTable_1225" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1223" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1225" xlink:to="loc_dei_LegalEntityAxis_1223" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1226" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1223" xlink:to="loc_dei_EntityDomain_1226" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1224" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1225" xlink:to="loc_us-gaap_StatementLineItems_1224" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock_1227" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1224" xlink:to="loc_us-gaap_BusinessCombinationDisclosureTextBlock_1227" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/RevenueRecognition">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_309907" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_309913" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_309907" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_309913" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/CreditLosses">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditLossAbstract" xlink:label="loc_us-gaap_CreditLossAbstract_758246" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditLossFinancialInstrumentTextBlock" xlink:label="loc_us-gaap_CreditLossFinancialInstrumentTextBlock_758247" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditLossAbstract_758246" xlink:to="loc_us-gaap_CreditLossFinancialInstrumentTextBlock_758247" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/GoodwillAndIntangibleAssets">
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xlink:label="loc_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract_310069" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_310070" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract_310069" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_310070" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="loc_us-gaap_DisclosureTextBlockAbstract_310124" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_328198" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureTextBlockAbstract_310124" xlink:to="loc_us-gaap_StatementTable_328198" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_328199" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_328198" xlink:to="loc_us-gaap_StatementClassOfStockAxis_328199" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_328200" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_328199" xlink:to="loc_us-gaap_ClassOfStockDomain_328200" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_328201" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_328198" xlink:to="loc_us-gaap_StatementLineItems_328201" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SupplementalBalanceSheetDisclosuresTextBlock" xlink:label="loc_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock_310125" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_328201" xlink:to="loc_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock_310125" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConvertibleSeniorNotes">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_1330" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1333" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_1330" xlink:to="loc_us-gaap_StatementTable_1333" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1331" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1333" xlink:to="loc_dei_LegalEntityAxis_1331" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1334" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1331" xlink:to="loc_dei_EntityDomain_1334" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1332" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1333" xlink:to="loc_us-gaap_StatementLineItems_1332" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtTextBlock" xlink:label="loc_us-gaap_LongTermDebtTextBlock_1335" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1332" xlink:to="loc_us-gaap_LongTermDebtTextBlock_1335" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/StockholdersEquity">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_1264" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1267" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_1264" xlink:to="loc_us-gaap_StatementTable_1267" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1265" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1267" xlink:to="loc_dei_LegalEntityAxis_1265" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1268" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1265" xlink:to="loc_dei_EntityDomain_1268" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1266" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1267" xlink:to="loc_us-gaap_StatementLineItems_1266" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_1269" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1266" xlink:to="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_1269" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/CommitmentsAndContingencies">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_1281" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1284" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_1281" xlink:to="loc_us-gaap_StatementTable_1284" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1282" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1284" xlink:to="loc_dei_LegalEntityAxis_1282" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1285" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1282" xlink:to="loc_dei_EntityDomain_1285" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1283" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1284" xlink:to="loc_us-gaap_StatementLineItems_1283" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_1286" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1283" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_1286" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLoss">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_1344" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1347" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_1344" xlink:to="loc_us-gaap_StatementTable_1347" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1345" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1347" xlink:to="loc_dei_LegalEntityAxis_1345" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1348" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1345" xlink:to="loc_dei_EntityDomain_1348" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1346" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1347" xlink:to="loc_us-gaap_StatementLineItems_1346" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:label="loc_us-gaap_ComprehensiveIncomeNoteTextBlock_1349" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1346" xlink:to="loc_us-gaap_ComprehensiveIncomeNoteTextBlock_1349" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/IncomeTaxes">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_1245" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1248" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_1245" xlink:to="loc_us-gaap_StatementTable_1248" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1246" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1248" xlink:to="loc_dei_LegalEntityAxis_1246" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1249" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1246" xlink:to="loc_dei_EntityDomain_1249" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1247" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1248" xlink:to="loc_us-gaap_StatementLineItems_1247" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_1250" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1247" xlink:to="loc_us-gaap_IncomeTaxDisclosureTextBlock_1250" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/EarningsPerShare">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasicAbstract" xlink:label="loc_us-gaap_EarningsPerShareBasicAbstract_409424" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_412030" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAbstract_409424" xlink:to="loc_us-gaap_StatementTable_412030" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_412031" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_412030" xlink:to="loc_us-gaap_StatementClassOfStockAxis_412031" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_412032" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_412031" xlink:to="loc_us-gaap_ClassOfStockDomain_412032" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_412033" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_412030" xlink:to="loc_us-gaap_StatementLineItems_412033" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="loc_us-gaap_EarningsPerShareTextBlock_409431" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_412033" xlink:to="loc_us-gaap_EarningsPerShareTextBlock_409431" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/RelatedPartyTransactions">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="loc_us-gaap_RelatedPartyTransactionsAbstract_1365" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1368" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsAbstract_1365" xlink:to="loc_us-gaap_StatementTable_1368" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1366" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1368" xlink:to="loc_dei_LegalEntityAxis_1366" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1369" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1366" xlink:to="loc_dei_EntityDomain_1369" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1367" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1368" xlink:to="loc_us-gaap_StatementLineItems_1367" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock_1370" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1367" xlink:to="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock_1370" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SegmentReporting">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_758358" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock_758361" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_758358" xlink:to="loc_us-gaap_SegmentReportingDisclosureTextBlock_758361" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SubsequentEvents">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="loc_us-gaap_SubsequentEventsAbstract_410103" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_412052" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_410103" xlink:to="loc_us-gaap_StatementTable_412052" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_412053" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_412052" xlink:to="loc_us-gaap_StatementClassOfStockAxis_412053" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_412054" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_412053" xlink:to="loc_us-gaap_ClassOfStockDomain_412054" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_412055" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_412052" xlink:to="loc_us-gaap_StatementLineItems_412055" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="loc_us-gaap_SubsequentEventsTextBlock_410104" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_412055" xlink:to="loc_us-gaap_SubsequentEventsTextBlock_410104" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfSignificantAccountingPoliciesPolicies">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_1168" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1171" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_1168" xlink:to="loc_us-gaap_StatementTable_1171" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1169" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1171" xlink:to="loc_dei_LegalEntityAxis_1169" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1172" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1169" xlink:to="loc_dei_EntityDomain_1172" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1170" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1171" xlink:to="loc_us-gaap_StatementLineItems_1170" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_680158" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1170" xlink:to="loc_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_680158" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock" xlink:label="loc_rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock_1177" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1170" xlink:to="loc_rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock_1177" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_1189" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1170" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_1189" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AcquisitionsTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TextBlockAbstract" xlink:label="loc_us-gaap_TextBlockAbstract_1229" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1234" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TextBlockAbstract_1229" xlink:to="loc_us-gaap_StatementTable_1234" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1232" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1234" xlink:to="loc_dei_LegalEntityAxis_1232" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1239" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1232" xlink:to="loc_dei_EntityDomain_1239" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_1231" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1234" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_1231" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1230" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_1231" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1230" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_EngineeredMoldingTechnologyLlcMember" xlink:label="loc_rgen_EngineeredMoldingTechnologyLlcMember_758233" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1230" xlink:to="loc_rgen_EngineeredMoldingTechnologyLlcMember_758233" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CTechnologiesMember" xlink:label="loc_rgen_CTechnologiesMember_464374" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_1230" xlink:to="loc_rgen_CTechnologiesMember_464374" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1233" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1234" xlink:to="loc_us-gaap_StatementLineItems_1233" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_1241" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1233" xlink:to="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_1241" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock" xlink:label="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_464375" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1233" xlink:to="loc_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock_464375" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_1242" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1233" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_1242" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/RevenueRecognitionTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_758718" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_758722" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_758718" xlink:to="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_758722" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfRevenueByMajorCustomersTableTextBlock" xlink:label="loc_rgen_ScheduleOfRevenueByMajorCustomersTableTextBlock_758732" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_758718" xlink:to="loc_rgen_ScheduleOfRevenueByMajorCustomersTableTextBlock_758732" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_758733" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_758718" xlink:to="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_758733" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/CreditLossesTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditLossAbstract" xlink:label="loc_us-gaap_CreditLossAbstract_758249" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:label="loc_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock_758250" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditLossAbstract_758249" xlink:to="loc_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock_758250" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables">
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xlink:label="loc_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract_310073" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_328214" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract_310073" xlink:to="loc_us-gaap_StatementTable_328214" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_328218" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_328214" xlink:to="loc_dei_LegalEntityAxis_328218" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_328219" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_328218" xlink:to="loc_dei_EntityDomain_328219" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_328215" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_328214" xlink:to="loc_us-gaap_StatementLineItems_328215" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock_310075" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_328215" xlink:to="loc_us-gaap_ScheduleOfGoodwillTextBlock_310075" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock_310081" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_328215" xlink:to="loc_rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock_310081" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_310082" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_328215" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_310082" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetailTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="loc_us-gaap_DisclosureTextBlockAbstract_310127" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_328264" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureTextBlockAbstract_310127" xlink:to="loc_us-gaap_StatementTable_328264" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_328266" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_328264" xlink:to="loc_dei_LegalEntityAxis_328266" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_328267" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_328266" xlink:to="loc_dei_EntityDomain_328267" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_328265" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_328264" xlink:to="loc_us-gaap_StatementLineItems_328265" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_310129" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_328265" xlink:to="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_310129" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_310131" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_328265" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_310131" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_310132" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_328265" xlink:to="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_310132" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConvertibleSeniorNotesTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_1337" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1340" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_1337" xlink:to="loc_us-gaap_StatementTable_1340" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1338" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1340" xlink:to="loc_dei_LegalEntityAxis_1338" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1341" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1338" xlink:to="loc_dei_EntityDomain_1341" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1339" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1340" xlink:to="loc_us-gaap_StatementLineItems_1339" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleDebtTableTextBlock" xlink:label="loc_us-gaap_ConvertibleDebtTableTextBlock_1342" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1339" xlink:to="loc_us-gaap_ConvertibleDebtTableTextBlock_1342" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/StockholdersEquityTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_1271" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1274" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_1271" xlink:to="loc_us-gaap_StatementTable_1274" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_409521" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1274" xlink:to="loc_us-gaap_AwardTypeAxis_409521" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_409522" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_409521" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_409522" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1273" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1274" xlink:to="loc_us-gaap_StatementLineItems_1273" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_1276" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1273" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_1276" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_1278" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1273" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_1278" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_1279" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1273" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_1279" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLossTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_1351" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1354" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_1351" xlink:to="loc_us-gaap_StatementTable_1354" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1352" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1354" xlink:to="loc_dei_LegalEntityAxis_1352" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1355" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1352" xlink:to="loc_dei_EntityDomain_1355" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1353" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1354" xlink:to="loc_us-gaap_StatementLineItems_1353" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_1356" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1353" xlink:to="loc_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock_1356" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/IncomeTaxesTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_1252" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_1255" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_1252" xlink:to="loc_us-gaap_StatementTable_1255" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1253" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1255" xlink:to="loc_dei_LegalEntityAxis_1253" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1256" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1253" xlink:to="loc_dei_EntityDomain_1256" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_1254" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1255" xlink:to="loc_us-gaap_StatementLineItems_1254" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SummaryOfIncomeTaxExaminationsTextBlock" xlink:label="loc_us-gaap_SummaryOfIncomeTaxExaminationsTextBlock_1261" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1254" xlink:to="loc_us-gaap_SummaryOfIncomeTaxExaminationsTextBlock_1261" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/EarningsPerShareTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasicAbstract" xlink:label="loc_us-gaap_EarningsPerShareBasicAbstract_412035" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_500287" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAbstract_412035" xlink:to="loc_us-gaap_StatementTable_500287" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_500288" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_500287" xlink:to="loc_dei_LegalEntityAxis_500288" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_500289" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_500288" xlink:to="loc_dei_EntityDomain_500289" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_500290" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_500287" xlink:to="loc_us-gaap_StatementLineItems_500290" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_412041" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_500290" xlink:to="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_412041" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SegmentReportingTables">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TextBlockAbstract" xlink:label="loc_us-gaap_TextBlockAbstract_409376" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_409394" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TextBlockAbstract_409376" xlink:to="loc_us-gaap_StatementTable_409394" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_409395" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_409394" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_409395" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_409396" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_409395" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_409396" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_409398" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_409396" xlink:to="loc_us-gaap_SalesRevenueNetMember_409398" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_409403" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_409394" xlink:to="loc_us-gaap_StatementLineItems_409403" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock_409404" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_409403" xlink:to="loc_us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock_409404" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:label="loc_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock_409405" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_409403" xlink:to="loc_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock_409405" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_217" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_SummaryOfSignificantAccountingPoliciesTable" xlink:label="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_217" xlink:to="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_227" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_dei_LegalEntityAxis_227" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_246" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_227" xlink:to="loc_dei_EntityDomain_246" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_233" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_233" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_234" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_233" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_234" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_228" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_srt_MajorCustomersAxis_228" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_229" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_MajorCustomersAxis_228" xlink:to="loc_srt_NameOfMajorCustomerDomain_229" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_220" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_AwardTypeAxis_220" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_232" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_220" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_232" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenueArrangementTypeAxis" xlink:label="loc_us-gaap_DeferredRevenueArrangementTypeAxis_223" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_DeferredRevenueArrangementTypeAxis_223" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenueArrangementTypeDomain" xlink:label="loc_us-gaap_DeferredRevenueArrangementTypeDomain_224" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredRevenueArrangementTypeAxis_223" xlink:to="loc_us-gaap_DeferredRevenueArrangementTypeDomain_224" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_230" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_srt_RangeAxis_230" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_231" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_230" xlink:to="loc_srt_RangeMember_231" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_237" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_srt_TitleOfIndividualAxis_237" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_238" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualAxis_237" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_238" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_221" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_DebtInstrumentAxis_221" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_222" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_221" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_222" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="loc_rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember_499357" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_222" xlink:to="loc_rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember_499357" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_218" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_218" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_239" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_218" xlink:to="loc_us-gaap_TypeOfAdoptionMember_239" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_225" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_225" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_226" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_225" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_226" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_310007" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_310007" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_310008" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_310007" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_310008" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="loc_us-gaap_CashAndCashEquivalentsAxis_333058" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_CashAndCashEquivalentsAxis_333058" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_333059" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAxis_333058" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_333059" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="loc_us-gaap_MoneyMarketFundsMember_333060" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_333059" xlink:to="loc_us-gaap_MoneyMarketFundsMember_333060" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_333061" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_333061" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_333062" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_333061" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_333062" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_333063" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_333062" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_333063" use="optional" order="30" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_502681" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_502681" use="optional" order="31" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_502682" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_502681" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_502682" use="optional" order="32" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_502684" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_us-gaap_FairValueByMeasurementFrequencyAxis_502684" use="optional" order="33" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_502685" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_502684" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_502685" use="optional" order="34" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_SummaryOfSignificantAccountingPoliciesLineItems" xlink:label="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesTable_236" xlink:to="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" use="optional" order="35" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_265" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_265" use="optional" order="36" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="loc_us-gaap_DebtInstrumentMaturityDate_266" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_us-gaap_DebtInstrumentMaturityDate_266" use="optional" order="37" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFrequencyOfPeriodicPayment" xlink:label="loc_us-gaap_DebtInstrumentFrequencyOfPeriodicPayment_267" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_us-gaap_DebtInstrumentFrequencyOfPeriodicPayment_267" use="optional" order="38" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaap_LongTermDebt_269" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_us-gaap_LongTermDebt_269" use="optional" order="39" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtFairValue" xlink:label="loc_us-gaap_LongTermDebtFairValue_270" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_us-gaap_LongTermDebtFairValue_270" use="optional" order="40" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_333057" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_333057" use="optional" order="41" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_499359" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_SummaryOfSignificantAccountingPoliciesLineItems_235" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_499359" use="optional" order="42" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_481" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_481" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_492" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_srt_RangeAxis_492" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_493" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_492" xlink:to="loc_srt_RangeMember_493" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_483" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_483" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_482" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_483" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_482" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CTechnologiesMember" xlink:label="loc_rgen_CTechnologiesMember_464438" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_482" xlink:to="loc_rgen_CTechnologiesMember_464438" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_EngineeredMoldingTechnologyLlcMember" xlink:label="loc_rgen_EngineeredMoldingTechnologyLlcMember_758236" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_482" xlink:to="loc_rgen_EngineeredMoldingTechnologyLlcMember_758236" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_487" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_487" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_488" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_487" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_488" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_489" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_489" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_490" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_489" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_490" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_520" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_490" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_520" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContingentConsiderationByTypeAxis" xlink:label="loc_us-gaap_ContingentConsiderationByTypeAxis_485" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_ContingentConsiderationByTypeAxis_485" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContingentConsiderationTypeDomain" xlink:label="loc_us-gaap_ContingentConsiderationTypeDomain_486" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ContingentConsiderationByTypeAxis_485" xlink:to="loc_us-gaap_ContingentConsiderationTypeDomain_486" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByAssetClassAxis" xlink:label="loc_us-gaap_FairValueByAssetClassAxis_464441" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_FairValueByAssetClassAxis_464441" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_464442" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByAssetClassAxis_464441" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_464442" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillMember" xlink:label="loc_us-gaap_GoodwillMember_464443" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_464442" xlink:to="loc_us-gaap_GoodwillMember_464443" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_464445" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_464445" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_464446" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_464445" xlink:to="loc_us-gaap_TypeOfAdoptionMember_464446" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonrecurringAdjustmentAxis" xlink:label="loc_us-gaap_NonrecurringAdjustmentAxis_467962" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_NonrecurringAdjustmentAxis_467962" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonrecurringAdjustmentDomain" xlink:label="loc_us-gaap_NonrecurringAdjustmentDomain_467963" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NonrecurringAdjustmentAxis_467962" xlink:to="loc_us-gaap_NonrecurringAdjustmentDomain_467963" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_680181" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_srt_TitleOfIndividualAxis_680181" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_680182" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualAxis_680181" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_680182" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TrustForBenefitOfEmployeesMember" xlink:label="loc_us-gaap_TrustForBenefitOfEmployeesMember_680183" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_680182" xlink:to="loc_us-gaap_TrustForBenefitOfEmployeesMember_680183" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_484" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_494" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_484" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_502" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_502" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets_465011" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets_465011" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationAcquisitionRelatedCosts" xlink:label="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_504" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessCombinationAcquisitionRelatedCosts_504" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_505" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_505" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/positiveLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_508" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_Goodwill_508" use="optional" order="30" preferredLabel="http://www.xbrl.org/2003/role/positiveTerseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual" xlink:label="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_510" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual_510" use="optional" order="31" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed" xlink:label="loc_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed_511" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed_511" use="optional" order="32" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue_464444" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue_464444" use="optional" order="33" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:label="loc_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_467961" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_467961" use="optional" order="34" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_468635" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_468635" use="optional" order="35" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold" xlink:label="loc_us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold_681420" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold_681420" use="optional" order="36" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_681423" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1_681423" use="optional" order="37" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_758237" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_758237" use="optional" order="38" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationConsiderationIndemnificationEscrow" xlink:label="loc_rgen_BusinessCombinationConsiderationIndemnificationEscrow_758239" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_484" xlink:to="loc_rgen_BusinessCombinationConsiderationIndemnificationEscrow_758239" use="optional" order="39" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_542" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_549" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_542" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_549" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_548" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_549" xlink:to="loc_dei_LegalEntityAxis_548" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_573" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_548" xlink:to="loc_dei_EntityDomain_573" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_544" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_549" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_544" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_543" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_544" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_543" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CTechnologiesMember" xlink:label="loc_rgen_CTechnologiesMember_464434" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_543" xlink:to="loc_rgen_CTechnologiesMember_464434" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_EngineeredMoldingTechnologyLlcMember" xlink:label="loc_rgen_EngineeredMoldingTechnologyLlcMember_758234" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_543" xlink:to="loc_rgen_EngineeredMoldingTechnologyLlcMember_758234" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_546" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_549" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_546" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_547" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_546" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_547" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_569" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_547" xlink:to="loc_us-gaap_CustomerRelationshipsMember_569" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember_570" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_547" xlink:to="loc_us-gaap_DevelopedTechnologyRightsMember_570" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TrademarksAndTradeNamesMember" xlink:label="loc_us-gaap_TrademarksAndTradeNamesMember_571" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_547" xlink:to="loc_us-gaap_TrademarksAndTradeNamesMember_571" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_572" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_547" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_572" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_545" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_549" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_545" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_553" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_553" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash_464409" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash_464409" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_554" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_554" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_556" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_556" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_558" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_558" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_559" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_559" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_464416" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset_464416" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_560" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_560" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_562" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_562" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_564" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_Goodwill_564" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_566" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_566" use="optional" order="25" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities_568" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities_568" use="optional" order="26" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus_465040" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus_465040" use="optional" order="27" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent_464426" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent_464426" use="optional" order="28" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent_464419" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent_464419" use="optional" order="29" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent" xlink:label="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent_464423" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent_464423" use="optional" order="30" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_565" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_545" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_565" use="optional" order="31" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_464408" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_464411" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_464408" xlink:to="loc_us-gaap_StatementTable_464411" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_464412" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_464411" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_464412" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_464413" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_464412" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_464413" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_464420" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_464413" xlink:to="loc_us-gaap_CustomerRelationshipsMember_464420" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember_464421" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_464413" xlink:to="loc_us-gaap_DevelopedTechnologyRightsMember_464421" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="loc_us-gaap_TradeNamesMember_464422" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_464413" xlink:to="loc_us-gaap_TradeNamesMember_464422" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_464424" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_464413" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_464424" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_464415" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_464411" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_464415" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_464417" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_464415" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_464417" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_EngineeredMoldingTechnologyLlcMember" xlink:label="loc_rgen_EngineeredMoldingTechnologyLlcMember_758235" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_464417" xlink:to="loc_rgen_EngineeredMoldingTechnologyLlcMember_758235" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_464414" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_464411" xlink:to="loc_us-gaap_StatementLineItems_464414" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_464425" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_464414" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_464425" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_464437" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_464414" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_464437" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_575" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_580" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_575" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_580" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_579" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_580" xlink:to="loc_dei_LegalEntityAxis_579" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_587" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_579" xlink:to="loc_dei_EntityDomain_587" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_577" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_580" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_577" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_576" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_577" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_576" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CTechnologiesMember" xlink:label="loc_rgen_CTechnologiesMember_464406" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_576" xlink:to="loc_rgen_CTechnologiesMember_464406" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_578" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_580" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_578" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaRevenue" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_583" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_578" xlink:to="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_583" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_584" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_578" xlink:to="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_584" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_585" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_578" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_585" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_586" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_578" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_586" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_309972" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_309973" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_309972" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_309973" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_309974" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_309973" xlink:to="loc_srt_ProductOrServiceAxis_309974" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_309975" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_309974" xlink:to="loc_srt_ProductsAndServicesDomain_309975" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductMember" xlink:label="loc_us-gaap_ProductMember_309976" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_309975" xlink:to="loc_us-gaap_ProductMember_309976" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/presentationGuidance" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RoyaltyMember" xlink:label="loc_us-gaap_RoyaltyMember_309977" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_309975" xlink:to="loc_us-gaap_RoyaltyMember_309977" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_309978" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_309973" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_309978" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_309980" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_309978" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_309980" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/RevenueFromSignificantCustomersDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_309958" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTable" xlink:label="loc_us-gaap_ConcentrationRiskTable_309959" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_309958" xlink:to="loc_us-gaap_ConcentrationRiskTable_309959" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_309961" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_309959" xlink:to="loc_srt_MajorCustomersAxis_309961" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_309962" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_MajorCustomersAxis_309961" xlink:to="loc_srt_NameOfMajorCustomerDomain_309962" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CytivaMember" xlink:label="loc_rgen_CytivaMember_309965" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_309962" xlink:to="loc_rgen_CytivaMember_309965" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_MilliporeSigmaMember" xlink:label="loc_rgen_MilliporeSigmaMember_309964" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_309962" xlink:to="loc_rgen_MilliporeSigmaMember_309964" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="loc_us-gaap_ConcentrationRiskLineItems_309969" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_309959" xlink:to="loc_us-gaap_ConcentrationRiskLineItems_309969" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_309970" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_309969" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_309970" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_309936" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_309938" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_309936" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_309938" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_309939" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_309938" xlink:to="loc_dei_LegalEntityAxis_309939" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_309940" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_309939" xlink:to="loc_dei_EntityDomain_309940" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_309941" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_309938" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_309941" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityAbstract" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract_309942" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_309941" xlink:to="loc_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract_309942" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_309943" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract_309942" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_309943" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenue" xlink:label="loc_us-gaap_DeferredRevenue_309944" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ContractWithCustomerAssetAndLiabilityAbstract_309942" xlink:to="loc_us-gaap_DeferredRevenue_309944" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract" xlink:label="loc_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract_309946" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_309941" xlink:to="loc_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract_309946" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaap_ContractWithCustomerLiability_309947" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract_309946" xlink:to="loc_us-gaap_ContractWithCustomerLiability_309947" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod" xlink:label="loc_us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod_309948" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract_309946" xlink:to="loc_us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod_309948" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/CreditLossesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditLossAbstract" xlink:label="loc_us-gaap_CreditLossAbstract_758252" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_758253" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditLossAbstract_758252" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_758253" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_758254" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditLossAbstract_758252" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_758254" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/CreditLossesSummaryOfAllowanceForCreditLossesForAccountsReceivablesDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CreditLossAbstract" xlink:label="loc_us-gaap_CreditLossAbstract_758256" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_758257" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditLossAbstract_758256" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_758257" use="optional" order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_758259" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditLossAbstract_758256" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_758259" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_758260" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditLossAbstract_758256" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_758260" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_758261" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditLossAbstract_758256" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_758261" use="optional" order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_599" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_604" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_599" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_604" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_603" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_604" xlink:to="loc_dei_LegalEntityAxis_603" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_612" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_603" xlink:to="loc_dei_EntityDomain_612" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_601" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_604" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_601" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_600" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_601" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_600" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CTechnologiesMember" xlink:label="loc_rgen_CTechnologiesMember_680368" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_600" xlink:to="loc_rgen_CTechnologiesMember_680368" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_EngineeredMoldingTechnologyLlcMember" xlink:label="loc_rgen_EngineeredMoldingTechnologyLlcMember_758263" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_600" xlink:to="loc_rgen_EngineeredMoldingTechnologyLlcMember_758263" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillLineItems" xlink:label="loc_us-gaap_GoodwillLineItems_602" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_604" xlink:to="loc_us-gaap_GoodwillLineItems_602" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_608" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_602" xlink:to="loc_us-gaap_Goodwill_608" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_464405" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_602" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_464405" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_610" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_602" xlink:to="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_610" use="optional" order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_611" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_602" xlink:to="loc_us-gaap_Goodwill_611" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_450" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfIntangibleAssetsTable" xlink:label="loc_rgen_ScheduleOfIntangibleAssetsTable_457" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_450" xlink:to="loc_rgen_ScheduleOfIntangibleAssetsTable_457" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_456" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfIntangibleAssetsTable_457" xlink:to="loc_dei_LegalEntityAxis_456" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_468" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_456" xlink:to="loc_dei_EntityDomain_468" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_451" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfIntangibleAssetsTable_457" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_451" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_451" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember_458" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452" xlink:to="loc_us-gaap_DevelopedTechnologyRightsMember_458" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PatentsMember" xlink:label="loc_us-gaap_PatentsMember_459" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452" xlink:to="loc_us-gaap_PatentsMember_459" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_460" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452" xlink:to="loc_us-gaap_CustomerRelationshipsMember_460" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TrademarksMember" xlink:label="loc_us-gaap_TrademarksMember_462" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452" xlink:to="loc_us-gaap_TrademarksMember_462" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherIntangibleAssetsMember" xlink:label="loc_us-gaap_OtherIntangibleAssetsMember_461" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_452" xlink:to="loc_us-gaap_OtherIntangibleAssetsMember_461" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_453" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfIntangibleAssetsTable_457" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_453" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_454" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_453" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_454" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TrademarksMember" xlink:label="loc_us-gaap_TrademarksMember_328065" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_454" xlink:to="loc_us-gaap_TrademarksMember_328065" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IntangibleAssetsLineItems" xlink:label="loc_rgen_IntangibleAssetsLineItems_455" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfIntangibleAssetsTable_457" xlink:to="loc_rgen_IntangibleAssetsLineItems_455" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_464" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_464" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsGrossExcludingGoodwill_463" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_us-gaap_IntangibleAssetsGrossExcludingGoodwill_463" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_328051" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill_328051" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IndefiniteLivedIntangibleAssetsNet" xlink:label="loc_rgen_IndefiniteLivedIntangibleAssetsNet_328054" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_rgen_IndefiniteLivedIntangibleAssetsNet_328054" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_465" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_465" use="optional" order="19" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization_310092" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization_310092" use="optional" order="20" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_310095" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_310095" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_310094" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_310094" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_466" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IntangibleAssetsLineItems_455" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetUsefulLife_466" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract" xlink:label="loc_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract_310106" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_310108" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract_310106" xlink:to="loc_us-gaap_StatementTable_310108" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_310109" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_310108" xlink:to="loc_us-gaap_StatementClassOfStockAxis_310109" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_310110" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_310109" xlink:to="loc_us-gaap_ClassOfStockDomain_310110" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_310113" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_310108" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_310113" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_310114" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_310113" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_310114" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_330864" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_310108" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_330864" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_330865" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_330864" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_330865" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:label="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_310112" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_310108" xlink:to="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_310112" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_310118" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_310112" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_310118" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_470" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_473" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_470" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_473" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_472" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_473" xlink:to="loc_dei_LegalEntityAxis_472" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_479" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_472" xlink:to="loc_dei_EntityDomain_479" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_FiniteLivedIntangibleLiabilitiesLineItems" xlink:label="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_473" xlink:to="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_474" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_474" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_475" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_475" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_476" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_476" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_477" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_477" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_478" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_478" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_310100" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_310100" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_310101" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_FiniteLivedIntangibleLiabilitiesLineItems_471" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_310101" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ScheduleOfInventoriesDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_316" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryCurrentTable" xlink:label="loc_us-gaap_InventoryCurrentTable_317" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_316" xlink:to="loc_us-gaap_InventoryCurrentTable_317" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_319" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryCurrentTable_317" xlink:to="loc_dei_LegalEntityAxis_319" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_324" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_319" xlink:to="loc_dei_EntityDomain_324" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryLineItems" xlink:label="loc_us-gaap_InventoryLineItems_318" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryCurrentTable_317" xlink:to="loc_us-gaap_InventoryLineItems_318" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_320" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryLineItems_318" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_320" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves_321" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryLineItems_318" xlink:to="loc_us-gaap_InventoryWorkInProcessNetOfReserves_321" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_322" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryLineItems_318" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_322" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_323" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryLineItems_318" xlink:to="loc_us-gaap_InventoryNet_323" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_977" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_980" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_977" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_980" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_978" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_980" xlink:to="loc_dei_LegalEntityAxis_978" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_981" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_978" xlink:to="loc_dei_EntityDomain_981" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_980" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Land" xlink:label="loc_us-gaap_Land_982" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_Land_982" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="loc_us-gaap_BuildingsAndImprovementsGross_983" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_BuildingsAndImprovementsGross_983" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseholdImprovementsGross" xlink:label="loc_us-gaap_LeaseholdImprovementsGross_984" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_LeaseholdImprovementsGross_984" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="loc_us-gaap_MachineryAndEquipmentGross_985" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_MachineryAndEquipmentGross_985" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FurnitureAndFixturesGross" xlink:label="loc_us-gaap_FurnitureAndFixturesGross_986" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_FurnitureAndFixturesGross_986" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareGross_680381" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareGross_680381" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConstructionInProgressGross" xlink:label="loc_us-gaap_ConstructionInProgressGross_987" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_ConstructionInProgressGross_987" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentOther" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentOther_409979" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentOther_409979" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_988" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_988" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_989" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_989" use="optional" order="14" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_990" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_979" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_990" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="loc_us-gaap_DisclosureTextBlockAbstract_329191" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_329193" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureTextBlockAbstract_329191" xlink:to="loc_us-gaap_StatementTable_329193" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_FacilityAxis" xlink:label="loc_rgen_FacilityAxis_329197" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_329193" xlink:to="loc_rgen_FacilityAxis_329197" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_FacilityDomain" xlink:label="loc_rgen_FacilityDomain_329198" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_FacilityAxis_329197" xlink:to="loc_rgen_FacilityDomain_329198" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_329200" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_329193" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_329200" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_329201" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_329200" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_329201" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_502862" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_329193" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_502862" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_502864" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_502862" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_502864" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RgenFacilityAxis" xlink:label="loc_rgen_RgenFacilityAxis_680386" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_329193" xlink:to="loc_rgen_RgenFacilityAxis_680386" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RgenFacilityDomain" xlink:label="loc_rgen_RgenFacilityDomain_680387" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_RgenFacilityAxis_680386" xlink:to="loc_rgen_RgenFacilityDomain_680387" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_329196" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_329193" xlink:to="loc_us-gaap_StatementLineItems_329196" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation_329206" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_329196" xlink:to="loc_us-gaap_Depreciation_329206" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/label" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract_999" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfAccruedLiabilitiesTable" xlink:label="loc_rgen_ScheduleOfAccruedLiabilitiesTable_1002" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_999" xlink:to="loc_rgen_ScheduleOfAccruedLiabilitiesTable_1002" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1000" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesTable_1002" xlink:to="loc_dei_LegalEntityAxis_1000" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1003" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1000" xlink:to="loc_dei_EntityDomain_1003" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfAccruedLiabilitiesLineItems" xlink:label="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesTable_1002" xlink:to="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_1004" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_1004" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_1005" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_1005" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedRoyaltiesCurrent" xlink:label="loc_us-gaap_AccruedRoyaltiesCurrent_1006" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_AccruedRoyaltiesCurrent_1006" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_310149" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_310149" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedProfessionalFeesCurrent" xlink:label="loc_us-gaap_AccruedProfessionalFeesCurrent_1009" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_AccruedProfessionalFeesCurrent_1009" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="loc_us-gaap_DeferredRevenueCurrent_1010" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_DeferredRevenueCurrent_1010" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_1011" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_1011" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_1012" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfAccruedLiabilitiesLineItems_1001" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_1012" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_1038" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentTable" xlink:label="loc_us-gaap_DebtInstrumentTable_1044" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_1038" xlink:to="loc_us-gaap_DebtInstrumentTable_1044" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_1039" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_1044" xlink:to="loc_us-gaap_DebtInstrumentAxis_1039" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_1041" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_1039" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_1041" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="loc_rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember_499446" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_1041" xlink:to="loc_rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember_499446" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember" xlink:label="loc_rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember_1069" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_1041" xlink:to="loc_rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember_1069" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember" xlink:label="loc_rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember_502954" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_1041" xlink:to="loc_rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember_502954" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodAxis" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_1042" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_1044" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_1042" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodDomain" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_1043" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_1042" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_1043" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_468841" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_1044" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_468841" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_468842" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_468841" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_468842" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_499490" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_1044" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_499490" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_499491" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_499490" xlink:to="loc_us-gaap_EquityComponentDomain_499491" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_499493" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_499491" xlink:to="loc_us-gaap_CommonStockMember_499493" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="loc_us-gaap_DebtInstrumentLineItems_1040" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_1044" xlink:to="loc_us-gaap_DebtInstrumentLineItems_1040" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_1046" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_1046" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_1047" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_1047" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromConvertibleDebt" xlink:label="loc_us-gaap_ProceedsFromConvertibleDebt_1048" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_ProceedsFromConvertibleDebt_1048" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateTerms" xlink:label="loc_us-gaap_DebtInstrumentInterestRateTerms_500277" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentInterestRateTerms_500277" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="loc_us-gaap_DebtInstrumentMaturityDate_1051" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentMaturityDate_1051" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentConvertibleConversionRatio1" xlink:label="loc_us-gaap_DebtInstrumentConvertibleConversionRatio1_1057" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentConvertibleConversionRatio1_1057" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentConvertibleConversionPrice1" xlink:label="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_1058" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_1058" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentRedemptionPricePercentage" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPricePercentage_1059" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPricePercentage_1059" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFairValue" xlink:label="loc_us-gaap_DebtInstrumentFairValue_1062" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentFairValue_1062" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InterestExpenseDebtExcludingAmortization" xlink:label="loc_us-gaap_InterestExpenseDebtExcludingAmortization_1063" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_InterestExpenseDebtExcludingAmortization_1063" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfDebtDiscountPremium" xlink:label="loc_us-gaap_AmortizationOfDebtDiscountPremium_1064" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_AmortizationOfDebtDiscountPremium_1064" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfFinancingCosts" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts_1065" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_AmortizationOfFinancingCosts_1065" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:label="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_1066" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_1066" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaap_LongTermDebt_1067" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_LongTermDebt_1067" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermDebtFairValue" xlink:label="loc_us-gaap_LongTermDebtFairValue_1068" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_LongTermDebtFairValue_1068" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_OptionToPurchaseAdditionalDebtFaceAmount" xlink:label="loc_rgen_OptionToPurchaseAdditionalDebtFaceAmount_499447" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_rgen_OptionToPurchaseAdditionalDebtFaceAmount_499447" use="optional" order="30" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_DiscountRate" xlink:label="loc_rgen_DiscountRate_499453" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_rgen_DiscountRate_499453" use="optional" order="31" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature" xlink:label="loc_us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature_499454" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature_499454" use="optional" order="32" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent" xlink:label="loc_rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent_499455" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent_499455" use="optional" order="33" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ConvertibleNotesTransactionCostsOfEquityComponent" xlink:label="loc_rgen_ConvertibleNotesTransactionCostsOfEquityComponent_499456" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_rgen_ConvertibleNotesTransactionCostsOfEquityComponent_499456" use="optional" order="34" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarlyRepaymentOfSeniorDebt" xlink:label="loc_us-gaap_EarlyRepaymentOfSeniorDebt_499476" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_EarlyRepaymentOfSeniorDebt_499476" use="optional" order="35" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentIncreaseAccruedInterest" xlink:label="loc_us-gaap_DebtInstrumentIncreaseAccruedInterest_499477" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentIncreaseAccruedInterest_499477" use="optional" order="36" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_499479" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_499479" use="optional" order="37" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_499480" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_499480" use="optional" order="38" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtConversionConvertedInstrumentAmount1" xlink:label="loc_us-gaap_DebtConversionConvertedInstrumentAmount1_499482" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtConversionConvertedInstrumentAmount1_499482" use="optional" order="39" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_DebtInstrumentFaceAmountRemaining" xlink:label="loc_rgen_DebtInstrumentFaceAmountRemaining_500283" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_rgen_DebtInstrumentFaceAmountRemaining_500283" use="optional" order="40" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent" xlink:label="loc_us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent_499484" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent_499484" use="optional" order="41" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_499486" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_1040" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_499486" use="optional" order="42" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_499537" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_499540" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_499537" xlink:to="loc_us-gaap_StatementTable_499540" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_499541" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_499540" xlink:to="loc_us-gaap_StatementClassOfStockAxis_499541" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_499542" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_499541" xlink:to="loc_us-gaap_ClassOfStockDomain_499542" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_499543" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_499540" xlink:to="loc_us-gaap_StatementLineItems_499543" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount_499548" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_499543" xlink:to="loc_us-gaap_DebtInstrumentCarryingAmount_499548" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscount" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscount_499550" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_499543" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscount_499550" use="optional" order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredFinanceCostsNet" xlink:label="loc_us-gaap_DeferredFinanceCostsNet_499552" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_499543" xlink:to="loc_us-gaap_DeferredFinanceCostsNet_499552" use="optional" order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleNotesPayable" xlink:label="loc_us-gaap_ConvertibleNotesPayable_499554" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_499543" xlink:to="loc_us-gaap_ConvertibleNotesPayable_499554" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleLongTermNotesPayable" xlink:label="loc_us-gaap_ConvertibleLongTermNotesPayable_499555" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_499543" xlink:to="loc_us-gaap_ConvertibleLongTermNotesPayable_499555" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_759" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_StockholdersEquityNoteDisclosureTable" xlink:label="loc_rgen_StockholdersEquityNoteDisclosureTable_768" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_759" xlink:to="loc_rgen_StockholdersEquityNoteDisclosureTable_768" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_762" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_dei_LegalEntityAxis_762" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_774" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_762" xlink:to="loc_dei_EntityDomain_774" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_769" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_srt_TitleOfIndividualAxis_769" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_770" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualAxis_769" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_770" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_UnderwriterMember" xlink:label="loc_rgen_UnderwriterMember_803" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_770" xlink:to="loc_rgen_UnderwriterMember_803" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_760" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_us-gaap_AwardTypeAxis_760" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_765" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_760" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_765" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_777" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_765" xlink:to="loc_us-gaap_EmployeeStockOptionMember_777" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_NonEmployeeDirectorStockOptionMember" xlink:label="loc_rgen_NonEmployeeDirectorStockOptionMember_778" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_765" xlink:to="loc_rgen_NonEmployeeDirectorStockOptionMember_778" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_UnvestedOptionsMember" xlink:label="loc_rgen_UnvestedOptionsMember_781" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_765" xlink:to="loc_rgen_UnvestedOptionsMember_781" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_681830" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_765" xlink:to="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_681830" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_766" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_766" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_761" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_766" xlink:to="loc_us-gaap_EquityComponentDomain_761" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_773" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_761" xlink:to="loc_us-gaap_CommonStockMember_773" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_763" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_srt_RangeAxis_763" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_764" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_763" xlink:to="loc_srt_RangeMember_764" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_775" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_764" xlink:to="loc_srt_MinimumMember_775" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_776" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_764" xlink:to="loc_srt_MaximumMember_776" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VestingAxis" xlink:label="loc_us-gaap_VestingAxis_771" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_us-gaap_VestingAxis_771" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VestingDomain" xlink:label="loc_us-gaap_VestingDomain_772" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VestingAxis_771" xlink:to="loc_us-gaap_VestingDomain_772" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationAwardTrancheOneMember" xlink:label="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember_807" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VestingDomain_772" xlink:to="loc_us-gaap_ShareBasedCompensationAwardTrancheOneMember_807" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaap_PlanNameAxis_310020" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_us-gaap_PlanNameAxis_310020" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaap_PlanNameDomain_310022" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameAxis_310020" xlink:to="loc_us-gaap_PlanNameDomain_310022" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_StockOptionAndIncentivePlanMember" xlink:label="loc_rgen_StockOptionAndIncentivePlanMember_310025" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_310022" xlink:to="loc_rgen_StockOptionAndIncentivePlanMember_310025" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_StockholdersEquityNoteDisclosureLineItems" xlink:label="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureTable_768" xlink:to="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" use="optional" order="26" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_782" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_CommonStockSharesIssued_782" use="optional" order="27" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CommonStockIssuePricePerShare" xlink:label="loc_rgen_CommonStockIssuePricePerShare_783" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_rgen_CommonStockIssuePricePerShare_783" use="optional" order="28" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_784" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_784" use="optional" order="29" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_785" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfCommonStock_785" use="optional" order="30" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_786" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensation_786" use="optional" order="31" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_787" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_787" use="optional" order="32" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_788" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_788" use="optional" order="33" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_789" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_789" use="optional" order="34" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_790" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_790" use="optional" order="35" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_791" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_791" use="optional" order="36" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaap_SharePrice_793" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_SharePrice_793" use="optional" order="37" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_794" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_794" use="optional" order="38" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_795" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_795" use="optional" order="39" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1_796" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1_796" use="optional" order="40" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_797" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested_797" use="optional" order="41" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_798" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_798" use="optional" order="42" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_799" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue_799" use="optional" order="43" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_800" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_800" use="optional" order="44" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_801" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_801" use="optional" order="45" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares" xlink:label="loc_rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares_802" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares_802" use="optional" order="46" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="loc_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_310019" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_310019" use="optional" order="47" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_792" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_StockholdersEquityNoteDisclosureLineItems_767" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_792" use="optional" order="48" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_810" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_815" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_810" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_815" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_814" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_815" xlink:to="loc_dei_LegalEntityAxis_814" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_820" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_814" xlink:to="loc_dei_EntityDomain_820" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_812" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_815" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_812" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_813" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_812" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_813" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember_817" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_813" xlink:to="loc_us-gaap_CostOfSalesMember_817" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_818" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_813" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_818" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_819" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_813" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_819" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_811" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_815" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_811" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_816" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_811" xlink:to="loc_us-gaap_ShareBasedCompensation_816" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfOptionActivityDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_839" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_841" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_839" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_841" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_840" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_841" xlink:to="loc_dei_LegalEntityAxis_840" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_847" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_840" xlink:to="loc_dei_EntityDomain_847" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_842" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_841" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_842" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_842" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_854" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_854" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_855" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_855" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_856" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_856" use="optional" order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_858" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_858" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_859" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_859" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_860" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_845" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_860" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_846" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_842" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_846" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_861" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_846" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_861" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_862" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_846" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_862" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_863" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_846" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_863" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_865" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_846" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_865" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_866" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_846" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_866" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_843" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_842" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_843" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_848" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_843" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_848" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_849" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_843" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_849" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_850" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_843" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_850" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract" xlink:label="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_844" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_842" xlink:to="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_844" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_851" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_844" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_851" use="optional" order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_852" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_844" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_852" use="optional" order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_853" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract_844" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_853" use="optional" order="25" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_869" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_872" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_869" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_872" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_870" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_872" xlink:to="loc_us-gaap_AwardTypeAxis_870" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_874" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_870" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_874" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_879" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_874" xlink:to="loc_us-gaap_EmployeeStockOptionMember_879" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_871" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_872" xlink:to="loc_dei_LegalEntityAxis_871" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_877" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_871" xlink:to="loc_dei_EntityDomain_877" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_875" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_872" xlink:to="loc_srt_TitleOfIndividualAxis_875" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_876" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualAxis_875" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_876" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_NonExecutiveMember" xlink:label="loc_rgen_NonExecutiveMember_880" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_876" xlink:to="loc_rgen_NonExecutiveMember_880" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ExecutiveOfficerMember" xlink:label="loc_srt_ExecutiveOfficerMember_881" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_876" xlink:to="loc_srt_ExecutiveOfficerMember_881" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_873" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_872" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_873" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_PercentageOfSharesSubjectToForfeiture" xlink:label="loc_rgen_PercentageOfSharesSubjectToForfeiture_878" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_873" xlink:to="loc_rgen_PercentageOfSharesSubjectToForfeiture_878" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_883" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_886" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_883" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_886" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_884" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_886" xlink:to="loc_us-gaap_AwardTypeAxis_884" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_891" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_884" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_891" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_903" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_891" xlink:to="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_903" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_890" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_886" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_890" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_889" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_890" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_889" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_897" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_889" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_897" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_898" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_889" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_898" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_899" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_889" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_899" use="optional" order="9" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_900" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_889" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_900" use="optional" order="10" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_901" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_889" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_901" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber" xlink:label="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber_902" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_890" xlink:to="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber_902" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_887" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_890" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_887" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_893" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_887" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_893" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm" xlink:label="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm_894" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_887" xlink:to="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm_894" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_888" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_890" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_888" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_895" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_888" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_895" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_896" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract_888" xlink:to="loc_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_896" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_905" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_908" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_905" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_908" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_906" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_908" xlink:to="loc_us-gaap_AwardTypeAxis_906" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_910" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_906" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_910" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_681837" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_910" xlink:to="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_681837" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_907" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_908" xlink:to="loc_dei_LegalEntityAxis_907" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_913" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_907" xlink:to="loc_dei_EntityDomain_913" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_911" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_908" xlink:to="loc_srt_TitleOfIndividualAxis_911" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_912" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualAxis_911" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_912" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_NonExecutiveMember" xlink:label="loc_rgen_NonExecutiveMember_916" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_912" xlink:to="loc_rgen_NonExecutiveMember_916" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ExecutiveOfficerMember" xlink:label="loc_srt_ExecutiveOfficerMember_917" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_912" xlink:to="loc_srt_ExecutiveOfficerMember_917" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_909" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_908" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_909" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_PercentageOfSharesSubjectToForfeiture" xlink:label="loc_rgen_PercentageOfSharesSubjectToForfeiture_914" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_909" xlink:to="loc_rgen_PercentageOfSharesSubjectToForfeiture_914" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_919" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CommitmentsAndContingenciesTable" xlink:label="loc_rgen_CommitmentsAndContingenciesTable_923" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_919" xlink:to="loc_rgen_CommitmentsAndContingenciesTable_923" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_926" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_dei_LegalEntityAxis_926" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_950" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_926" xlink:to="loc_dei_EntityDomain_950" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_AmendmentAxis" xlink:label="loc_rgen_AmendmentAxis_920" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_rgen_AmendmentAxis_920" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_AmendmentDomain" xlink:label="loc_rgen_AmendmentDomain_921" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_AmendmentAxis_920" xlink:to="loc_rgen_AmendmentDomain_921" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_924" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_924" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_925" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_924" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_925" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_309791" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_309791" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_309794" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_309791" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_309794" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srt_ProductOrServiceAxis_329274" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_srt_ProductOrServiceAxis_329274" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srt_ProductsAndServicesDomain_329275" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_329274" xlink:to="loc_srt_ProductsAndServicesDomain_329275" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_NGLImpactAMember" xlink:label="loc_rgen_NGLImpactAMember_329276" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_329275" xlink:to="loc_rgen_NGLImpactAMember_329276" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis_329277" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis_329277" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_329278" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis_329277" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_329278" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentArrangementMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentArrangementMember_329279" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_329278" xlink:to="loc_us-gaap_ResearchAndDevelopmentArrangementMember_329279" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_329283" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_srt_RangeAxis_329283" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_329284" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_329283" xlink:to="loc_srt_RangeMember_329284" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_421675" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_421675" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_421677" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_421675" xlink:to="loc_us-gaap_TypeOfAdoptionMember_421677" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CommitmentsAndContingenciesLineItems" xlink:label="loc_rgen_CommitmentsAndContingenciesLineItems_922" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_CommitmentsAndContingenciesTable_923" xlink:to="loc_rgen_CommitmentsAndContingenciesLineItems_922" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LongTermPurchaseCommitmentAmount" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentAmount_329272" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_CommitmentsAndContingenciesLineItems_922" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentAmount_329272" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_1073" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_1075" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_1073" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_1075" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1077" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_1075" xlink:to="loc_dei_LegalEntityAxis_1077" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1085" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1077" xlink:to="loc_dei_EntityDomain_1085" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_1078" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_1075" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_1078" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_1076" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_1078" xlink:to="loc_us-gaap_EquityComponentDomain_1076" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedTranslationAdjustmentMember" xlink:label="loc_us-gaap_AccumulatedTranslationAdjustmentMember_1084" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_1076" xlink:to="loc_us-gaap_AccumulatedTranslationAdjustmentMember_1084" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1074" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_1075" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1074" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_1079" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1074" xlink:to="loc_us-gaap_StockholdersEquity_1079" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_1080" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1074" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_1080" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_1081" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_1074" xlink:to="loc_us-gaap_StockholdersEquity_1081" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_642" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IncomeTaxesTable" xlink:label="loc_rgen_IncomeTaxesTable_648" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_642" xlink:to="loc_rgen_IncomeTaxesTable_648" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_649" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_dei_LegalEntityAxis_649" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_670" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_649" xlink:to="loc_dei_EntityDomain_670" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_652" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_srt_StatementGeographicalAxis_652" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_651" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_652" xlink:to="loc_srt_SegmentGeographicalDomain_651" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_645" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_645" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_646" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_645" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_646" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_644" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_644" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_643" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_644" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_643" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxPeriodAxis" xlink:label="loc_us-gaap_TaxPeriodAxis_654" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_us-gaap_TaxPeriodAxis_654" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxPeriodDomain" xlink:label="loc_us-gaap_TaxPeriodDomain_655" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TaxPeriodAxis_654" xlink:to="loc_us-gaap_TaxPeriodDomain_655" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_329225" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_329225" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_329226" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_329225" xlink:to="loc_us-gaap_TypeOfAdoptionMember_329226" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_329228" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_329228" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_329229" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_329228" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_329229" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_IncomeTaxesLineItems" xlink:label="loc_rgen_IncomeTaxesLineItems_647" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IncomeTaxesTable_648" xlink:to="loc_rgen_IncomeTaxesLineItems_647" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_667" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IncomeTaxesLineItems_647" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_667" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_412008" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_IncomeTaxesLineItems_647" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_412008" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_731" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExaminationTable" xlink:label="loc_us-gaap_IncomeTaxExaminationTable_733" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_731" xlink:to="loc_us-gaap_IncomeTaxExaminationTable_733" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_734" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExaminationTable_733" xlink:to="loc_dei_LegalEntityAxis_734" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_740" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_734" xlink:to="loc_dei_EntityDomain_740" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_736" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExaminationTable_733" xlink:to="loc_srt_StatementGeographicalAxis_736" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_735" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_736" xlink:to="loc_srt_SegmentGeographicalDomain_735" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_US" xlink:label="loc_country_US_741" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_735" xlink:to="loc_country_US_741" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_SE" xlink:label="loc_country_SE_742" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_735" xlink:to="loc_country_SE_742" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_DE" xlink:label="loc_country_DE_743" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_735" xlink:to="loc_country_DE_743" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_NL" xlink:label="loc_country_NL_744" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_735" xlink:to="loc_country_NL_744" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxPeriodAxis" xlink:label="loc_us-gaap_TaxPeriodAxis_737" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExaminationTable_733" xlink:to="loc_us-gaap_TaxPeriodAxis_737" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxPeriodDomain" xlink:label="loc_us-gaap_TaxPeriodDomain_738" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TaxPeriodAxis_737" xlink:to="loc_us-gaap_TaxPeriodDomain_738" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarliestTaxYearMember" xlink:label="loc_us-gaap_EarliestTaxYearMember_745" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TaxPeriodDomain_738" xlink:to="loc_us-gaap_EarliestTaxYearMember_745" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LatestTaxYearMember" xlink:label="loc_us-gaap_LatestTaxYearMember_746" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TaxPeriodDomain_738" xlink:to="loc_us-gaap_LatestTaxYearMember_746" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExaminationLineItems" xlink:label="loc_us-gaap_IncomeTaxExaminationLineItems_732" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExaminationTable_733" xlink:to="loc_us-gaap_IncomeTaxExaminationLineItems_732" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OpenTaxYear" xlink:label="loc_us-gaap_OpenTaxYear_327901" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxExaminationLineItems_732" xlink:to="loc_us-gaap_OpenTaxYear_327901" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_410018" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_410020" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_410018" xlink:to="loc_us-gaap_StatementTable_410020" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_410021" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_410020" xlink:to="loc_us-gaap_StatementClassOfStockAxis_410021" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_410022" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_410021" xlink:to="loc_us-gaap_ClassOfStockDomain_410022" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_410033" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_410020" xlink:to="loc_us-gaap_AwardTypeAxis_410033" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_410034" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_410033" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_410034" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_RestrictedStockAndPerformanceStockUnitsMember" xlink:label="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_681854" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_410034" xlink:to="loc_rgen_RestrictedStockAndPerformanceStockUnitsMember_681854" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_502999" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_410020" xlink:to="loc_us-gaap_DebtInstrumentAxis_502999" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_503000" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_502999" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_503000" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember" xlink:label="loc_rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember_503001" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_503000" xlink:to="loc_rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember_503001" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember" xlink:label="loc_rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember_503019" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_503000" xlink:to="loc_rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember_503019" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_503006" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_410020" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_503006" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_503007" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_503006" xlink:to="loc_us-gaap_EquityComponentDomain_503007" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_503008" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_503007" xlink:to="loc_us-gaap_CommonStockMember_503008" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_410023" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_410020" xlink:to="loc_us-gaap_StatementLineItems_410023" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_410032" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_410023" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_410032" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_410048" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_410023" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_410048" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_410051" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_410023" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_410051" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_410053" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_410023" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_410053" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_503002" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_410023" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_503002" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_503014" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_410023" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_503014" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/presentationGuidance" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail">
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ReconciliationOfBasicAndDilutedSharesAbstract" xlink:label="loc_rgen_ReconciliationOfBasicAndDilutedSharesAbstract_344" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable" xlink:label="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable_349" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ReconciliationOfBasicAndDilutedSharesAbstract_344" xlink:to="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable_349" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_346" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable_349" xlink:to="loc_dei_LegalEntityAxis_346" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_353" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_346" xlink:to="loc_dei_EntityDomain_353" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems" xlink:label="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_348" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable_349" xlink:to="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_348" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_354" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_348" xlink:to="loc_us-gaap_NetIncomeLoss_354" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_357" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_348" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_357" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DilutiveSecuritiesAbstract" xlink:label="loc_us-gaap_DilutiveSecuritiesAbstract_309949" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_348" xlink:to="loc_us-gaap_DilutiveSecuritiesAbstract_309949" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesRestrictedStock" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesRestrictedStock_309950" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DilutiveSecuritiesAbstract_309949" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesRestrictedStock_309950" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities_309951" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DilutiveSecuritiesAbstract_309949" xlink:to="loc_us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities_309951" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_309952" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DilutiveSecuritiesAbstract_309949" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_309952" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_309953" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DilutiveSecuritiesAbstract_309949" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_309953" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:label="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_330225" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems_348" xlink:to="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_330225" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic_309960" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_330225" xlink:to="loc_us-gaap_EarningsPerShareBasic_309960" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_309968" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_330225" xlink:to="loc_us-gaap_EarningsPerShareDiluted_309968" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="loc_us-gaap_RelatedPartyTransactionsAbstract_1107" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ScheduleOfRelatedPartyTable" xlink:label="loc_rgen_ScheduleOfRelatedPartyTable_1114" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsAbstract_1107" xlink:to="loc_rgen_ScheduleOfRelatedPartyTable_1114" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LegalEntityAxis" xlink:label="loc_dei_LegalEntityAxis_1108" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_dei_LegalEntityAxis_1108" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityDomain" xlink:label="loc_dei_EntityDomain_1117" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_1108" xlink:to="loc_dei_EntityDomain_1117" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_1115" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_srt_TitleOfIndividualAxis_1115" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_1116" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualAxis_1115" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_1116" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_1113" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_1113" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaap_RelatedPartyDomain_1111" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_1113" xlink:to="loc_us-gaap_RelatedPartyDomain_1111" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PrincipalOwnerMember" xlink:label="loc_us-gaap_PrincipalOwnerMember_1119" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyDomain_1111" xlink:to="loc_us-gaap_PrincipalOwnerMember_1119" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_1109" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_srt_RangeAxis_1109" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_1110" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_1109" xlink:to="loc_srt_RangeMember_1110" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_1118" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_1110" xlink:to="loc_srt_MinimumMember_1118" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_309716" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_309716" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_309717" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_309716" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_309717" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_SpectrumIncMember" xlink:label="loc_rgen_SpectrumIncMember_309719" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_309717" xlink:to="loc_rgen_SpectrumIncMember_309719" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipAxis" xlink:label="loc_srt_OwnershipAxis_327967" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_srt_OwnershipAxis_327967" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_OwnershipDomain" xlink:label="loc_srt_OwnershipDomain_327968" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_OwnershipAxis_327967" xlink:to="loc_srt_OwnershipDomain_327968" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_SpectrumIncMember" xlink:label="loc_rgen_SpectrumIncMember_499360" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_OwnershipDomain_327968" xlink:to="loc_rgen_SpectrumIncMember_499360" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_469079" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_469079" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_469080" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_469079" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_469080" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="loc_us-gaap_RelatedPartyTransactionLineItems_1112" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_rgen_ScheduleOfRelatedPartyTable_1114" xlink:to="loc_us-gaap_RelatedPartyTransactionLineItems_1112" use="optional" order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="loc_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners_1121" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_1112" xlink:to="loc_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners_1121" use="optional" order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesRentExpenseNet" xlink:label="loc_us-gaap_OperatingLeasesRentExpenseNet_681857" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_1112" xlink:to="loc_us-gaap_OperatingLeasesRentExpenseNet_681857" use="optional" order="22" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_500124" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfProductInformationTable" xlink:label="loc_us-gaap_ScheduleOfProductInformationTable_681395" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_500124" xlink:to="loc_us-gaap_ScheduleOfProductInformationTable_681395" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_681396" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfProductInformationTable_681395" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_681396" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_681397" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_681396" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_681397" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_681398" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_681397" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_681398" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_681858" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfProductInformationTable_681395" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_681858" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_681859" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_681858" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_681859" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="loc_us-gaap_AccountsReceivableMember_681860" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_681859" xlink:to="loc_us-gaap_AccountsReceivableMember_681860" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_681861" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfProductInformationTable_681395" xlink:to="loc_srt_MajorCustomersAxis_681861" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_681862" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_MajorCustomersAxis_681861" xlink:to="loc_srt_NameOfMajorCustomerDomain_681862" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CytivaMember" xlink:label="loc_rgen_CytivaMember_681863" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_681862" xlink:to="loc_rgen_CytivaMember_681863" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_681399" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfProductInformationTable_681395" xlink:to="loc_us-gaap_StatementLineItems_681399" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="loc_us-gaap_NumberOfOperatingSegments_500125" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_681399" xlink:to="loc_us-gaap_NumberOfOperatingSegments_500125" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_681400" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_681399" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_681400" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RisksAndUncertaintiesAbstract" xlink:label="loc_us-gaap_RisksAndUncertaintiesAbstract_373" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTable" xlink:label="loc_us-gaap_ConcentrationRiskTable_378" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RisksAndUncertaintiesAbstract_373" xlink:to="loc_us-gaap_ConcentrationRiskTable_378" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_376" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_378" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_376" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_379" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_376" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_379" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="loc_us-gaap_GeographicConcentrationRiskMember_385" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_379" xlink:to="loc_us-gaap_GeographicConcentrationRiskMember_385" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_375" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_378" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_375" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_374" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_375" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_374" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_383" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_374" xlink:to="loc_us-gaap_SalesRevenueNetMember_383" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_382" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_378" xlink:to="loc_srt_StatementGeographicalAxis_382" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_381" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_382" xlink:to="loc_srt_SegmentGeographicalDomain_381" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NorthAmericaMember" xlink:label="loc_srt_NorthAmericaMember_329156" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_381" xlink:to="loc_srt_NorthAmericaMember_329156" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_EuropeMember" xlink:label="loc_srt_EuropeMember_329157" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_381" xlink:to="loc_srt_EuropeMember_329157" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ApacOtherMember" xlink:label="loc_rgen_ApacOtherMember_329158" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_381" xlink:to="loc_rgen_ApacOtherMember_329158" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskLineItems" xlink:label="loc_us-gaap_ConcentrationRiskLineItems_377" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_378" xlink:to="loc_us-gaap_ConcentrationRiskLineItems_377" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_384" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_377" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_384" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/positiveLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RisksAndUncertaintiesAbstract" xlink:label="loc_us-gaap_RisksAndUncertaintiesAbstract_416" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable" xlink:label="loc_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable_425" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RisksAndUncertaintiesAbstract_416" xlink:to="loc_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable_425" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_419" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable_425" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_419" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_420" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_419" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_420" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_427" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_420" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_427" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_418" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable_425" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_418" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_417" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_418" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_417" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_426" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_417" xlink:to="loc_us-gaap_SalesRevenueNetMember_426" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_423" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable_425" xlink:to="loc_srt_MajorCustomersAxis_423" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_424" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_MajorCustomersAxis_423" xlink:to="loc_srt_NameOfMajorCustomerDomain_424" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_CytivaMember" xlink:label="loc_rgen_CytivaMember_430" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_424" xlink:to="loc_rgen_CytivaMember_430" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_MilliporeSigmaMember" xlink:label="loc_rgen_MilliporeSigmaMember_431" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_424" xlink:to="loc_rgen_MilliporeSigmaMember_431" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EntityWideRevenueMajorCustomerLineItems" xlink:label="loc_us-gaap_EntityWideRevenueMajorCustomerLineItems_421" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable_425" xlink:to="loc_us-gaap_EntityWideRevenueMajorCustomerLineItems_421" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_428" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EntityWideRevenueMajorCustomerLineItems_421" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_428" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
</presentationLink>
<presentationLink xlink:type="extended" xlink:role="http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail">
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="loc_us-gaap_SubsequentEventsAbstract_419225" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_419227" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_419225" xlink:to="loc_us-gaap_StatementTable_419227" use="optional" order="1" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_419425" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_419227" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_419425" use="optional" order="2" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_419427" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_419425" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_419427" use="optional" order="3" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="rgen-20200930.xsd#rgen_ArtesynBiosolutionsMember" xlink:label="loc_rgen_ArtesynBiosolutionsMember_764308" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_419427" xlink:to="loc_rgen_ArtesynBiosolutionsMember_764308" use="optional" order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_419433" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_419227" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_419433" use="optional" order="5" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_419435" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_419433" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_419435" use="optional" order="6" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SubsequentEventMember" xlink:label="loc_us-gaap_SubsequentEventMember_419436" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_419435" xlink:to="loc_us-gaap_SubsequentEventMember_419436" use="optional" order="7" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srt_TitleOfIndividualAxis_421552" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_419227" xlink:to="loc_srt_TitleOfIndividualAxis_421552" use="optional" order="8" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_421553" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_TitleOfIndividualAxis_421552" xlink:to="loc_srt_TitleOfIndividualWithRelationshipToEntityDomain_421553" use="optional" order="9" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaap_DebtInstrumentAxis_464333" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_419227" xlink:to="loc_us-gaap_DebtInstrumentAxis_464333" use="optional" order="10" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_464334" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_464333" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_464334" use="optional" order="11" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtConversionByUniqueDescriptionAxis" xlink:label="loc_us-gaap_DebtConversionByUniqueDescriptionAxis_464352" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_419227" xlink:to="loc_us-gaap_DebtConversionByUniqueDescriptionAxis_464352" use="optional" order="12" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtConversionNameDomain" xlink:label="loc_us-gaap_DebtConversionNameDomain_464353" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtConversionByUniqueDescriptionAxis_464352" xlink:to="loc_us-gaap_DebtConversionNameDomain_464353" use="optional" order="13" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_465029" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_419227" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_465029" use="optional" order="14" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_465030" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_465029" xlink:to="loc_us-gaap_EquityComponentDomain_465030" use="optional" order="15" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_419230" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_419227" xlink:to="loc_us-gaap_StatementLineItems_419230" use="optional" order="16" preferredLabel="http://www.xbrl.org/2003/role/label" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_419405" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_419230" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_419405" use="optional" order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable_419409" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_419230" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable_419409" use="optional" order="18" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
<loc xlink:type="locator" xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_419410" />
<presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_419230" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_419410" use="optional" order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
</presentationLink>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<FILENAME>d945763d10q_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2017-01-31"
  xmlns:dei="http://xbrl.sec.gov/dei/2019-01-31"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:rgen="http://www.repligencorp.com/20200930"
  xmlns:srt="http://fasb.org/srt/2019-01-31"
  xmlns:us-gaap="http://fasb.org/us-gaap/2019-01-31"
  xmlns:utr="http://www.xbrl.org/2009/utr"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="rgen-20200930.xsd" xlink:type="simple"/>
    <context id="P01_01_2020To09_30_2020">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="PAsOn09_30_2020">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="PAsOn07_19_2019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2019-07-19</instant>
        </period>
    </context>
    <context id="PAsOn05_03_2019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2019-05-03</instant>
        </period>
    </context>
    <context id="P07_19_2019To07_19_2019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2019-07-19</startDate>
            <endDate>2019-07-19</endDate>
        </period>
    </context>
    <context id="P05_03_2019To05_03_2019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2019-05-03</startDate>
            <endDate>2019-05-03</endDate>
        </period>
    </context>
    <context id="P01_01_2019To12_31_2019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="PAsOn09_30_2019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2019-09-30</instant>
        </period>
    </context>
    <context id="PAsOn11_02_2020">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2020-11-02</instant>
        </period>
    </context>
    <context id="P04_01_2020To06_30_2020">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-06-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To03_31_2020">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="PAsOn06_30_2020">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2020-06-30</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2018">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="PAsOn06_30_2019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2019-06-30</instant>
        </period>
    </context>
    <context id="PAsOn03_31_2020">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:CTechnologiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_NonExecutiveMembersrtTitleOfIndividualAxis_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_ExecutiveOfficerMembersrtTitleOfIndividualAxis_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_NonExecutiveMembersrtTitleOfIndividualAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_ExecutiveOfficerMembersrtTitleOfIndividualAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_MinimumMembersrtRangeAxis_PrincipalOwnerMemberusgaapRelatedPartyTransactionsByRelatedPartyAxis_SpectrumIncMembersrtOwnershipAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_TrademarksMemberusgaapIndefiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rgen:RestrictedStockAndPerformanceStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:CTechnologiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:CTechnologiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_TrademarksAndTradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:CTechnologiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:CTechnologiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_StockOptionAndIncentivePlanMemberusgaapPlanNameAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_FairValueInputsLevel1MemberusgaapFairValueByFairValueHierarchyLevelAxis_MoneyMarketFundsMemberusgaapCashAndCashEquivalentsAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_TradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_GoodwillMemberusgaapFairValueByAssetClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:CTechnologiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:GoodwillMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_GoodwillMemberusgaapFairValueByAssetClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:GoodwillMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2019_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>2019-12-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2019_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>2019-12-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2019_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>2019-12-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2019_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>2019-12-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2019_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>2019-12-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2019_TrademarksMemberusgaapIndefiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2019_FairValueInputsLevel1MemberusgaapFairValueByFairValueHierarchyLevelAxis_MoneyMarketFundsMemberusgaapCashAndCashEquivalentsAxis">
        <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>2019-12-31</instant>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_CostOfSalesMemberusgaapIncomeStatementLocationAxis">
        <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>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis">
        <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>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis">
        <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>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <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>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <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>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <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>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <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>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <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>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_ProductMembersrtProductOrServiceAxis">
        <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>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_RoyaltyMembersrtProductOrServiceAxis">
        <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>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <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>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <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>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:CTechnologiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">
        <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>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_NGLImpactAMembersrtProductOrServiceAxis_ResearchAndDevelopmentArrangementMemberusgaapLongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis">
        <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>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2020To09_30_2020_SpectrumIncMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:SpectrumIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_CostOfSalesMemberusgaapIncomeStatementLocationAxis">
        <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>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis">
        <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>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis">
        <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>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <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>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <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>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <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>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <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>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MilliporeSigmaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:MilliporeSigmaMember</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>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <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>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <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>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <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>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_ProductMembersrtProductOrServiceAxis">
        <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>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_RoyaltyMembersrtProductOrServiceAxis">
        <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>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P07_01_2019To09_30_2019_MilliporeSigmaMembersrtMajorCustomersAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:MilliporeSigmaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_CostOfSalesMemberusgaapIncomeStatementLocationAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MilliporeSigmaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:MilliporeSigmaMember</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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:CTechnologiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MinimumMembersrtRangeAxis_ShareBasedCompensationAwardTrancheOneMemberusgaapVestingAxis">
        <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:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MaximumMembersrtRangeAxis_ShareBasedCompensationAwardTrancheOneMemberusgaapVestingAxis">
        <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:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_NonEmployeeDirectorStockOptionMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rgen:NonEmployeeDirectorStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_UnvestedOptionsMemberusgaapAwardTypeAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MinimumMembersrtRangeAxis">
        <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:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MaximumMembersrtRangeAxis">
        <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:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_ProductMembersrtProductOrServiceAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_RoyaltyMembersrtProductOrServiceAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_MilliporeSigmaMembersrtMajorCustomersAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:MilliporeSigmaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_EarliestTaxYearMemberusgaapTaxPeriodAxis_USsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">us-gaap:EarliestTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_LatestTaxYearMemberusgaapTaxPeriodAxis_USsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">us-gaap:LatestTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_EarliestTaxYearMemberusgaapTaxPeriodAxis_SEsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:SE</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">us-gaap:EarliestTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_LatestTaxYearMemberusgaapTaxPeriodAxis_SEsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:SE</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">us-gaap:LatestTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_DEsrtStatementGeographicalAxis_LatestTaxYearMemberusgaapTaxPeriodAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:DE</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">us-gaap:LatestTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_EarliestTaxYearMemberusgaapTaxPeriodAxis_NLsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NL</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">us-gaap:EarliestTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_LatestTaxYearMemberusgaapTaxPeriodAxis_NLsrtStatementGeographicalAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:NL</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TaxPeriodAxis">us-gaap:LatestTaxYearMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_NGLImpactAMembersrtProductOrServiceAxis_ResearchAndDevelopmentArrangementMemberusgaapLongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_TradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_AccountsReceivableMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_CytivaMembersrtMajorCustomersAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:CytivaMember</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>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_TrustForBenefitOfEmployeesMembersrtTitleOfIndividualAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">us-gaap:TrustForBenefitOfEmployeesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_TrustForBenefitOfEmployeesMembersrtTitleOfIndividualAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">us-gaap:TrustForBenefitOfEmployeesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:CTechnologiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2020To09_30_2020_SpectrumIncMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:SpectrumIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_CostOfSalesMemberusgaapIncomeStatementLocationAxis">
        <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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis">
        <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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis">
        <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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:CTechnologiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_CytivaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:CytivaMember</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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MilliporeSigmaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:MilliporeSigmaMember</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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_ProductMembersrtProductOrServiceAxis">
        <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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_RoyaltyMembersrtProductOrServiceAxis">
        <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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis">
        <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>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_CytivaMembersrtMajorCustomersAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:CytivaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="P01_01_2019To09_30_2019_MilliporeSigmaMembersrtMajorCustomersAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:MilliporeSigmaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="PAsOn07_31_2019_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-31</instant>
        </period>
    </context>
    <context id="PAsOn07_31_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">
        <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="PAsOn06_30_2020_TrustForBenefitOfEmployeesMembersrtTitleOfIndividualAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">us-gaap:TrustForBenefitOfEmployeesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-06-30</instant>
        </period>
    </context>
    <context id="P05_31_2019To12_31_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:CTechnologiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-05-31</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="P01_01_2019To12_31_2019_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="P01_01_2019To12_31_2019_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="P01_01_2019To12_31_2019_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="P01_01_2019To12_31_2019_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="P01_01_2019To12_31_2019_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <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>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="P01_01_2019To12_31_2019_AccountsReceivableMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_CytivaMembersrtMajorCustomersAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">rgen:CytivaMember</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>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="P07_19_2019To07_19_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_UnderwriterMembersrtTitleOfIndividualAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">rgen:UnderwriterMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-07-19</startDate>
            <endDate>2019-07-19</endDate>
        </period>
    </context>
    <context id="P07_19_2019To07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">
        <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="P07_19_2019To07_19_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-07-19</startDate>
            <endDate>2019-07-19</endDate>
        </period>
    </context>
    <context id="PAsOn07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">
        <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="PAsOn07_16_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-16</instant>
        </period>
    </context>
    <context id="P07_22_2019To07_22_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-07-22</startDate>
            <endDate>2019-07-22</endDate>
        </period>
    </context>
    <context id="P07_22_2019To07_22_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-07-22</startDate>
            <endDate>2019-07-22</endDate>
        </period>
    </context>
    <context id="PAsOn07_22_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-07-22</instant>
        </period>
    </context>
    <context id="P09_01_2019To09_23_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-09-01</startDate>
            <endDate>2019-09-23</endDate>
        </period>
    </context>
    <context id="P09_01_2019To09_23_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-09-01</startDate>
            <endDate>2019-09-23</endDate>
        </period>
    </context>
    <context id="PAsOn09_23_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-09-23</instant>
        </period>
    </context>
    <context id="P05_03_2019To05_03_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_UnderwriterMembersrtTitleOfIndividualAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">rgen:UnderwriterMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-05-03</startDate>
            <endDate>2019-05-03</endDate>
        </period>
    </context>
    <context id="PAsOn12_31_2018_StockOptionAndIncentivePlanMemberusgaapPlanNameAxis">
        <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="PAsOn09_30_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rgen:RestrictedStockAndPerformanceStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2019_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">rgen:ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-09-30</instant>
        </period>
    </context>
    <context id="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-13</instant>
        </period>
    </context>
    <context id="PAsOn07_13_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-13</instant>
        </period>
    </context>
    <context id="PAsOn07_13_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-13</instant>
        </period>
    </context>
    <context id="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_TrademarksAndTradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-13</instant>
        </period>
    </context>
    <context id="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:EngineeredMoldingTechnologyLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-13</instant>
        </period>
    </context>
    <context id="P10_27_2020To10_27_2020_ArtesynBiosolutionsMemberusgaapBusinessAcquisitionAxis_SubsequentEventMemberusgaapSubsequentEventTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">rgen:ArtesynBiosolutionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-10-27</startDate>
            <endDate>2020-10-27</endDate>
        </period>
    </context>
    <context id="PAsOn06_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <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>2020-06-30</instant>
        </period>
    </context>
    <context id="PAsOn06_30_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis">
        <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>2020-06-30</instant>
        </period>
    </context>
    <context id="PAsOn06_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <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>2020-06-30</instant>
        </period>
    </context>
    <context id="PAsOn06_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <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>2020-06-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <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>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn06_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <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>2019-06-30</instant>
        </period>
    </context>
    <context id="PAsOn06_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <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>2019-06-30</instant>
        </period>
    </context>
    <context id="PAsOn06_30_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis">
        <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>2019-06-30</instant>
        </period>
    </context>
    <context id="PAsOn06_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <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>2019-06-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <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>2019-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <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>2019-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis">
        <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>2019-09-30</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <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>2019-09-30</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">rgen:RestrictedStockAndPerformanceStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2019_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="PAsOn09_30_2020_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000730272</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-09-30</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2019_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <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>2019-12-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <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>2019-12-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis">
        <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>2019-12-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <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>2019-12-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2018_CommonStockMemberusgaapStatementEquityComponentsAxis">
        <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>2018-12-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2018_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis">
        <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>2018-12-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2018_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis">
        <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>2018-12-31</instant>
        </period>
    </context>
    <context id="PAsOn12_31_2018_RetainedEarningsMemberusgaapStatementEquityComponentsAxis">
        <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>2018-12-31</instant>
        </period>
    </context>
    <unit id="Unit_USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Unit_shares">
        <measure>shares</measure>
    </unit>
    <unit id="Unit_pure">
        <measure>pure</measure>
    </unit>
    <unit id="Unit_Year">
        <measure>utr:Year</measure>
    </unit>
    <unit id="Unit_USD_per_Share">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="Unit_Segment">
        <measure>rgen:Segment</measure>
    </unit>
    <dei:AmendmentFlag contextRef="P01_01_2020To09_30_2020">false</dei:AmendmentFlag>
    <dei:DocumentFiscalPeriodFocus contextRef="P01_01_2020To09_30_2020">Q3</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey contextRef="P01_01_2020To09_30_2020">0000730272</dei:EntityCentralIndexKey>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MinimumMembersrtRangeAxis"
      id="hidden15372903">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MaximumMembersrtRangeAxis"
      id="hidden15372906">P5Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <dei:CurrentFiscalYearEndDate contextRef="P01_01_2020To09_30_2020">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:EntityAddressStateOrProvince contextRef="P01_01_2020To09_30_2020" id="hidden15360727">MA</dei:EntityAddressStateOrProvince>
    <dei:DocumentType contextRef="P01_01_2020To09_30_2020">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport contextRef="P01_01_2020To09_30_2020">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate contextRef="P01_01_2020To09_30_2020">2020-09-30</dei:DocumentPeriodEndDate>
    <dei:DocumentFiscalYearFocus contextRef="P01_01_2020To09_30_2020">2020</dei:DocumentFiscalYearFocus>
    <dei:DocumentTransitionReport contextRef="P01_01_2020To09_30_2020">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="P01_01_2020To09_30_2020">000-14656</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="P01_01_2020To09_30_2020">REPLIGEN CORP</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="P01_01_2020To09_30_2020">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="P01_01_2020To09_30_2020">04-2729386</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="P01_01_2020To09_30_2020">41 Seyon Street, Bldg. 1, Suite 100</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="P01_01_2020To09_30_2020">Waltham</dei:EntityAddressCityOrTown>
    <dei:EntityAddressPostalZipCode contextRef="P01_01_2020To09_30_2020">02453</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="P01_01_2020To09_30_2020">781</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="P01_01_2020To09_30_2020">250-0111</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="P01_01_2020To09_30_2020">Common Stock</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="P01_01_2020To09_30_2020">RGEN</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="P01_01_2020To09_30_2020">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus contextRef="P01_01_2020To09_30_2020">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="P01_01_2020To09_30_2020">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="P01_01_2020To09_30_2020">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="P01_01_2020To09_30_2020">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="P01_01_2020To09_30_2020">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany contextRef="P01_01_2020To09_30_2020">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="PAsOn11_02_2020"
      decimals="INF"
      unitRef="Unit_shares">52619271</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">553302000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">528392000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCash
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">9015000</us-gaap:RestrictedCash>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">621000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">525000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">55830000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">43068000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:OtherReceivablesGrossCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">95000</us-gaap:OtherReceivablesGrossCurrent>
    <us-gaap:OtherReceivablesGrossCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">148000</us-gaap:OtherReceivablesGrossCurrent>
    <us-gaap:UnbilledReceivablesCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">456000</us-gaap:UnbilledReceivablesCurrent>
    <us-gaap:InventoryNet
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">78531000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">54832000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">8970000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">5917000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">696728000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">641828000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">55355000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">48455000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">215385000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">212552000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:Goodwill
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">482043000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">468413000</us-gaap:Goodwill>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">2192000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">2920000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">24201000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">25707000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">412000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">238000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1476316000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">1400113000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">14483000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">11425000</us-gaap:AccountsPayableCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">4460000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">3557000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">32041000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">33331000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">50984000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">48313000</us-gaap:LiabilitiesCurrent>
    <us-gaap:ConvertibleLongTermNotesPayable
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">240942000</us-gaap:ConvertibleLongTermNotesPayable>
    <us-gaap:ConvertibleLongTermNotesPayable
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">232767000</us-gaap:ConvertibleLongTermNotesPayable>
    <us-gaap:DeferredTaxAndOtherLiabilitiesNoncurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">29435000</us-gaap:DeferredTaxAndOtherLiabilitiesNoncurrent>
    <us-gaap:DeferredTaxAndOtherLiabilitiesNoncurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">29944000</us-gaap:DeferredTaxAndOtherLiabilitiesNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">26378000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">26995000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">3707000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">2326000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">351446000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">340345000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies
      contextRef="PAsOn12_31_2019"
      unitRef="Unit_USD"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="PAsOn09_30_2020"
      unitRef="Unit_USD"
      xsi:nil="true"/>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="PAsOn12_31_2019"
      decimals="INF"
      unitRef="Unit_USD_per_Share">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      unitRef="Unit_USD_per_Share">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="PAsOn12_31_2019"
      decimals="INF"
      unitRef="Unit_shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="PAsOn12_31_2019"
      decimals="INF"
      unitRef="Unit_shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="PAsOn12_31_2019"
      decimals="INF"
      unitRef="Unit_shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockValue
      contextRef="PAsOn09_30_2020"
      unitRef="Unit_USD"
      xsi:nil="true"/>
    <us-gaap:PreferredStockValue
      contextRef="PAsOn12_31_2019"
      unitRef="Unit_USD"
      xsi:nil="true"/>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="PAsOn12_31_2019"
      decimals="INF"
      unitRef="Unit_USD_per_Share">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      unitRef="Unit_USD_per_Share">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="PAsOn12_31_2019"
      decimals="INF"
      unitRef="Unit_shares">80000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">80000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">52606700</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">52606700</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="PAsOn12_31_2019"
      decimals="INF"
      unitRef="Unit_shares">52078258</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="PAsOn12_31_2019"
      decimals="INF"
      unitRef="Unit_shares">52078258</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">526000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">521000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1087996000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">1068431000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">-9723000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">-15027000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">46071000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">5843000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1124870000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">1059768000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1476316000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">1400113000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P07_01_2020To09_30_2020_ProductMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">94029000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P07_01_2019To09_30_2019_ProductMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">69419000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2020To09_30_2020_ProductMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">257521000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2019To09_30_2019_ProductMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">200701000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P07_01_2020To09_30_2020_RoyaltyMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">31000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P07_01_2019To09_30_2019_RoyaltyMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">26000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2020To09_30_2020_RoyaltyMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">91000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2019To09_30_2019_RoyaltyMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">70000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">94060000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">69445000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">257612000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">200771000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">39626000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">31425000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">108471000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">88978000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">4422000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">5427000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">13460000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">14278000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">29051000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">24629000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">83277000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">67326000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:CostsAndExpenses
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">73099000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">61481000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">205208000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">170582000</us-gaap:CostsAndExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">20961000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">7964000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">52404000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">30189000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InvestmentIncomeNet
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">82000</us-gaap:InvestmentIncomeNet>
    <us-gaap:InvestmentIncomeNet
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">1898000</us-gaap:InvestmentIncomeNet>
    <us-gaap:InvestmentIncomeNet
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1699000</us-gaap:InvestmentIncomeNet>
    <us-gaap:InvestmentIncomeNet
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">3616000</us-gaap:InvestmentIncomeNet>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-5650000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-5650000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:InterestExpense
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">3052000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">2857000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">9032000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">6326000</us-gaap:InterestExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">-248000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">316000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">-632000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-23000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">-3218000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-6293000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">-7965000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-8383000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">17743000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">1671000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">44439000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">21806000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">3191000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">12000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">4211000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">3999000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">14552000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">1659000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">40228000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">17807000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="P07_01_2020To09_30_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.28</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="P07_01_2019To09_30_2019"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.03</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="P01_01_2020To09_30_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.77</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="P01_01_2019To09_30_2019"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.38</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="P07_01_2020To09_30_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.27</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="P07_01_2019To09_30_2019"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.03</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="P01_01_2020To09_30_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.75</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="P01_01_2019To09_30_2019"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.37</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_shares">52545000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_shares">50852000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_shares">52341000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_shares">47087000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_shares">53469000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_shares">51809000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_shares">53300000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_shares">47930000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">14552000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">1659000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">40228000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">17807000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">4390000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-6741000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">5304000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-9901000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">18942000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-5082000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">45532000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">7906000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="PAsOn12_31_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">52078258</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn12_31_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">521000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn12_31_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1068431000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn12_31_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-15027000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn12_31_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">5843000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">1059768000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="P01_01_2020To09_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">40228000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">40228000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="P01_01_2020To09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">528442</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="P01_01_2020To09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">5000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="P01_01_2020To09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">7073000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">7078000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="P01_01_2020To09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">12492000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">12492000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="PAsOn12_31_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">5304000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">5304000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="PAsOn09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">52606700</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">526000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1087996000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-9723000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">46071000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1124870000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="PAsOn06_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">52494884</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn06_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">525000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn06_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1082096000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn06_30_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-14113000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn06_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">31519000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn06_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1100027000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="P07_01_2020To09_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">14552000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">14552000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="P07_01_2020To09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">111816</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="P07_01_2020To09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="P07_01_2020To09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1675000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1676000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="P07_01_2020To09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">4225000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">4225000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="PAsOn06_30_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">4390000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="PAsOn06_30_2020"
      decimals="-3"
      unitRef="Unit_USD">4390000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="PAsOn09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">52606700</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">526000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2020_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1087996000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2020_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-9723000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2020_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">46071000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1124870000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="PAsOn12_31_2018_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">43917378</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn12_31_2018_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">439000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn12_31_2018_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">642590000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn12_31_2018_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-11893000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn12_31_2018_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-15568000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn12_31_2018"
      decimals="-3"
      unitRef="Unit_USD">615568000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="P01_01_2019To09_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">17807000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">17807000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits
      contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">2316229</us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">23000</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">198734000</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">198757000</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <rgen:AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt
      contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-200079000</rgen:AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt>
    <rgen:AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-200079000</rgen:AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">311299</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">3000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1055000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">1058000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesAcquisitions
      contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">779221</us-gaap:StockIssuedDuringPeriodSharesAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">8000</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">53930000</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">53938000</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">-3077</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">290000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">290000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="PAsOn09_30_2019_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="5"
      unitRef="Unit_pure">0.00375</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt
      contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">38088000</us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">38088000</us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">18607000</us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">4731531</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="P01_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">48000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">320665000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">320713000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="P01_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">9459000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">9459000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="PAsOn12_31_2018_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-9901000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="PAsOn12_31_2018"
      decimals="-3"
      unitRef="Unit_USD">-9901000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="PAsOn09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">52052581</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">521000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1064152000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-21794000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">2239000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">1045118000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="PAsOn06_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">48086422</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn06_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">481000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn06_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">892960000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn06_30_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-15053000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn06_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">580000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn06_30_2019"
      decimals="-3"
      unitRef="Unit_USD">878968000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="P07_01_2019To09_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1659000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">1659000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits
      contextRef="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">2316200</us-gaap:StockIssuedDuringPeriodSharesConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">23000</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">198732000</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfUnits
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">198755000</us-gaap:StockIssuedDuringPeriodValueConversionOfUnits>
    <rgen:AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt
      contextRef="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-200079000</rgen:AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt>
    <rgen:AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-200079000</rgen:AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">66036</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">493000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">494000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">-3077</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">290000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">290000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="PAsOn09_30_2019_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="5"
      unitRef="Unit_pure">0.00375</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt
      contextRef="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">38088000</us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">38088000</us-gaap:AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">6981000</us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">1587000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="P07_01_2019To09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">16000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">131073000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">131089000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="P07_01_2019To09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">3175000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">3175000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="PAsOn06_30_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-6741000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
      contextRef="PAsOn06_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-6741000</us-gaap:AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="PAsOn09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="0"
      unitRef="Unit_shares">52052581</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2019_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">521000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2019_AdditionalPaidInCapitalMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">1064152000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2019_AccumulatedOtherComprehensiveIncomeMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-21794000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2019_RetainedEarningsMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">2239000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">1045118000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">40228000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">17807000</us-gaap:NetIncomeLoss>
    <us-gaap:DepreciationAndAmortization
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">19581000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">14791000</us-gaap:DepreciationAndAmortization>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">8175000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">4863000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:ShareBasedCompensation
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">12492000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">9459000</us-gaap:ShareBasedCompensation>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">72000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-9680000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-5650000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">-228000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-114000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">11515000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">6734000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInOtherReceivables
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">-157000</us-gaap:IncreaseDecreaseInOtherReceivables>
    <us-gaap:IncreaseDecreaseInOtherReceivables
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-26000</us-gaap:IncreaseDecreaseInOtherReceivables>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">-456000</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-2047000</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">22767000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">4891000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">2908000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">1075000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <rgen:IncreasedecreaseInOperatingLeaseRightOfUseAsset
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">-2574000</rgen:IncreasedecreaseInOperatingLeaseRightOfUseAsset>
    <rgen:IncreasedecreaseInOperatingLeaseRightOfUseAsset
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-787000</rgen:IncreasedecreaseInOperatingLeaseRightOfUseAsset>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">260000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">66000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">3317000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-780000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">-2712000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">7263000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <rgen:IncreasedecreaseInOperatingLeaseLiability
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">-831000</rgen:IncreasedecreaseInOperatingLeaseLiability>
    <rgen:IncreasedecreaseInOperatingLeaseLiability
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-607000</rgen:IncreasedecreaseInOperatingLeaseLiability>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1467000</us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">10568000</us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">47754000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">49542000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">28445000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">182154000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireSoftware
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">3585000</us-gaap:PaymentsToAcquireSoftware>
    <us-gaap:PaymentsToAcquireSoftware
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">4630000</us-gaap:PaymentsToAcquireSoftware>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">11067000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">11413000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">-43097000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-198197000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">7088000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">1058000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">10000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">290000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:ProceedsFromConvertibleDebt
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">278555000</us-gaap:ProceedsFromConvertibleDebt>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">320713000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:RepaymentsOfConvertibleDebt
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">114989000</us-gaap:RepaymentsOfConvertibleDebt>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">7078000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">485047000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">4160000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">-7785000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">15895000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">328607000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">537407000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="PAsOn12_31_2018"
      decimals="-3"
      unitRef="Unit_USD">193822000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">553302000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="PAsOn09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">522429000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <rgen:AssetsAcquiredUnderOperatingLeases
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1456000</rgen:AssetsAcquiredUnderOperatingLeases>
    <us-gaap:DebtConversionConvertedInstrumentAmount1
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">198757000</us-gaap:DebtConversionConvertedInstrumentAmount1>
    <us-gaap:StockIssued1
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">53938000</us-gaap:StockIssued1>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="P01_01_2020To09_30_2020">
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;1.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Summary of Significant Accounting Policies &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Basis of Presentation &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The consolidated financial statements included herein have been prepared by Repligen Corporation (the &#x201c;Company&#x201d;, &#x201c;Repligen&#x201d; or &#x201c;we&#x201d;) in accordance with generally accepted accounting principles in the United States (&#x201c;GAAP&#x201d;) and pursuant to the rules and regulations of the Securities and Exchange Commission (&#x201c;SEC&#x201d;), for Quarterly Reports on Form &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;10-Q&lt;/div&gt; and Article 10 of Regulation &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;S-X&lt;/div&gt; and do not include all of the information and footnote disclosures required by GAAP. These 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 &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;10-K&lt;/div&gt; (&#x201c;Form &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;10-K&#x201d;)&lt;/div&gt; for the fiscal year ended December&#160;31, 2019.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&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 period. Actual results could differ from those estimates. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries, Repligen Sweden AB, Repligen GmbH, Spectrum LifeSciences, LLC and its subsidiaries (&#x201c;Spectrum&#x201d;), C Technologies, Inc. (&#x201c;C Technologies&#x201d;), Engineered Molding Technology (&#x201c;EMT&#x201d;) and Repligen Singapore Pte. Ltd. All significant intercompany accounts and transactions have been eliminated in consolidation. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The Company made no material changes in the application of&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;its&lt;/div&gt;&#160;significant accounting policies that were disclosed in its&#160;Form &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;10-K.&lt;/div&gt; In the opinion of management, the accompanying unaudited consolidated financial statements include all adjustments, consisting of only normal, recurring adjustments necessary for a fair presentation of the financial position, results of operations and cash flows. The results of operations for the interim periods presented are not necessarily indicative of results to be expected for the entire year.&lt;/div&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Risks and Uncertainties &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;The ultimate impact that the current pandemic of the novel coronavirus (&#x201c;COVID-19&#x201d;), may have on the Company and its customers, employees, suppliers, vendors, business partners and distribution channels is currently unknown. The Company is closely monitoring the impact of this evolving situation on all aspects of its business. While COVID-19 did not materially affect the Company&#x2019;s financial results and business operations in the Company&#x2019;s three and nine months ended September 30, 2020, the Company is unable to predict the impact that COVID-19 may have on its financial position and operations moving forward due to numerous uncertainties. These estimates may change as new events occur and additional information is obtained, and actual results could differ materially from these estimates under different assumptions or conditions. The Company will continue to assess the evolving impact of COVID-19 and will make adjustments to its operations as necessary.&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Recent Accounting Standards Updates &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;We consider the applicability and impact of all Accounting Standards Updates on the Company&#x2019;s consolidated financial statements. Updates not listed below were assessed and determined to be either not applicable or are expected to have minimal impact on the Company&#x2019;s consolidated financial position or results of operations. Recently issued Accounting Standards Updates that we feel may be applicable to the Company are as follows: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Recently Issued Accounting Standard Updates &#x2013; Adopted During the Period &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In August 2018, the Financial Accounting Standards Board (&#x201c;FASB&#x201d;) issued Accounting Standards Update No. (&#x201c;ASU&#x201d;) &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-13,&lt;/div&gt; &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Fair Value Measurement (Topic 820): Disclosure Framework &#x2013; Changes to the Disclosure Requirements for Fair Value Measurement.&#x201d; &lt;/div&gt;&lt;/div&gt;ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-13&lt;/div&gt; includes amendments that aim to improve the effectiveness of fair value measurement disclosures. The amendments in this guidance modify the disclosure requirements on fair value measurements based on the concepts in FASB Concepts Statement, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Conceptual Framework for Financial Reporting - Chapter 8: Notes to Financial Statements&lt;/div&gt;&lt;/div&gt;,&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201d;&lt;/div&gt;&lt;/div&gt; including the consideration of costs and benefits. The Company adopted ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-13&lt;/div&gt; on January&#160;1, 2020. The adoption did not have a material impact on the Company&#x2019;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In August 2018, the FASB issued ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-15,&lt;/div&gt; &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Intangibles &#x2013; Goodwill and Other &#x2013; &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Internal-Use&lt;/div&gt; Software (Subtopic &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;350-40):&lt;/div&gt; Customer&#x2019;s Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement That Is a Service Contract.&#x201d; &lt;/div&gt;&lt;/div&gt;ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-15&lt;/div&gt; aligns the requirements for capitalizing implementation costs incurred in a hosting arrangement that is a service contract with the requirements for capitalizing implementation costs incurred to develop or obtain &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;internal-use&lt;/div&gt; software (and hosting arrangements that include an &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;internal-use&lt;/div&gt; software license). The guidance also requires the entity to expense the capitalized implementation costs of a hosting arrangement that is a service contract over the term of the hosting arrangement, which includes reasonably certain renewals. The Company adopted ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-13&lt;/div&gt; on January&#160;1, 2020. The adoption did not have a material impact on the Company&#x2019;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In June 2016, the FASB issued ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2016-13,&lt;/div&gt; &#x201c;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Financial Instruments-Credit Losses (Topic 326).&#x201d;&lt;/div&gt;&lt;/div&gt; ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2016-13&lt;/div&gt; significantly changes how entities will account for credit losses for most financial assets and certain other instruments that are not measured at fair value through net income. ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2016-13&lt;/div&gt; replaces the existing incurred loss model with an expected credit loss model that requires entities to estimate an expected lifetime credit loss on most financial assets and certain other instruments, including short-term trade receivables and contract assets, and expands disclosure requirements for credit quality of financial assets. The Company adopted ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2016-13&lt;/div&gt; on January&#160;1, 2020. The Company assessed all potential impacts that the adoption of this guidance has on its consolidated financial statements. Based on the composition of the Company&#x2019;s investment portfolio, accounts receivable, current market conditions and historical credit loss activity, the adoption of ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2016-13&lt;/div&gt; by the Company did not have a material impact on its consolidated financial position, results of operations or cash flows as of and for the three and nine months ended September&#160;30, 2020. The Company continues to monitor processes and controls for indications of an adjustment for future economic conditions at quarterly and annual reporting periods. See Note 5, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Credit Losses,&#x201d; &lt;/div&gt;&lt;/div&gt;below for more information on the Company&#x2019;s adoption of ASC 326.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In November 2018, the FASB issued ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-18,&lt;/div&gt; &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Collaborative Arrangements (Topic 808): Clarifying the Interaction between Topic 808 and Topic 606.&#x201d; &lt;/div&gt;&lt;/div&gt;ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-18&lt;/div&gt; clarifies the interaction between Topic 808, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Collaborative Arrangements,&#x201d; &lt;/div&gt;&lt;/div&gt;and Topic 606, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Revenue from Contracts with Customers,&#x201d; &lt;/div&gt;&lt;/div&gt;by making targeted improvements to GAAP for collaborative arrangements and providing guidance on whether certain transactions between collaborative arrangement participants should be accounted for with revenue under Topic 606. This includes improving comparability in the presentation of revenue for certain transactions between collaborative arrangement participants by allowing presentation of the units of account in collaborative arrangements that are within the scope of Topic 606 together with revenue accounted for under Topic 606. The Company adopted ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-13&lt;/div&gt; on January&#160;1, 2020. The adoption did not have a material impact on the Company&#x2019;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In December 2019, the FASB issued ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2019-12,&lt;/div&gt; &#x201c;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Income Taxes (Topic 740) &#x2013; Simplifying the Accounting for Income Taxes.&#x201d; &lt;/div&gt;&lt;/div&gt;ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2019-12&lt;/div&gt; simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740, including, but not limited to, the exception to the incremental approach for intraperiod tax allocation when there is a loss from continuing operations and income or a gain from other items, the exceptions related to the recognition of a deferred tax liability related to an equity method investment and the exception to methodology for calculating income taxes in an interim period when a &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;year-to-date&lt;/div&gt;&lt;/div&gt; loss exceeds the anticipated loss for the year. The Company adopted ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-13&lt;/div&gt; on January&#160;1, 2020. The adoption did not have a material impact on the Company&#x2019;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Recently Issued Accounting Standard Updates &#x2013; Not Yet Adopted &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In August 2020, the FASB issued ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2020-06,&lt;/div&gt; &#x201c;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Debt - Debt with Conversion and Other Options (Subtopic &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;470-20)&lt;/div&gt; and Derivatives and Hedging - Contracts in Entity&lt;/div&gt;&lt;/div&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x2019;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;s Own Equity (Subtopic &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;815-40).&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201d;&lt;/div&gt;&lt;/div&gt; ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2020-06&lt;/div&gt; simplifies the accounting for convertible debt instruments and convertible preferred stock by reducing the number of accounting models and the number of embedded conversion features that could be recognized separately from the primary contract. ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2020-06&lt;/div&gt; also enhances transparency and improves disclosures for convertible instruments and earnings per share guidance. ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2020-06&lt;/div&gt; is effective for annual reporting periods beginning after December&#160;15, 2021, including interim periods within those fiscal years. Early adoption is permitted, but no earlier than fiscal years beginning after December&#160;15, 2020. This update permits the use of either the modified retrospective or fully retrospective method of transition. The Company is currently evaluating the timing and impact of the adoption of ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2020-06&lt;/div&gt; on the Company&#x2019;s consolidated financial statements.&lt;/div&gt; </us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Basis of Presentation &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The consolidated financial statements included herein have been prepared by Repligen Corporation (the &#x201c;Company&#x201d;, &#x201c;Repligen&#x201d; or &#x201c;we&#x201d;) in accordance with generally accepted accounting principles in the United States (&#x201c;GAAP&#x201d;) and pursuant to the rules and regulations of the Securities and Exchange Commission (&#x201c;SEC&#x201d;), for Quarterly Reports on Form &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;10-Q&lt;/div&gt; and Article 10 of Regulation &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;S-X&lt;/div&gt; and do not include all of the information and footnote disclosures required by GAAP. These 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 &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;10-K&lt;/div&gt; (&#x201c;Form &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;10-K&#x201d;)&lt;/div&gt; for the fiscal year ended December&#160;31, 2019.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&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 period. Actual results could differ from those estimates. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries, Repligen Sweden AB, Repligen GmbH, Spectrum LifeSciences, LLC and its subsidiaries (&#x201c;Spectrum&#x201d;), C Technologies, Inc. (&#x201c;C Technologies&#x201d;), Engineered Molding Technology (&#x201c;EMT&#x201d;) and Repligen Singapore Pte. Ltd. All significant intercompany accounts and transactions have been eliminated in consolidation. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The Company made no material changes in the application of&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;its&lt;/div&gt;&#160;significant accounting policies that were disclosed in its&#160;Form &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;10-K.&lt;/div&gt; In the opinion of management, the accompanying unaudited consolidated financial statements include all adjustments, consisting of only normal, recurring adjustments necessary for a fair presentation of the financial position, results of operations and cash flows. The results of operations for the interim periods presented are not necessarily indicative of results to be expected for the entire year.&lt;/div&gt;</us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock>
    <rgen:RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Risks and Uncertainties &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;The ultimate impact that the current pandemic of the novel coronavirus (&#x201c;COVID-19&#x201d;), may have on the Company and its customers, employees, suppliers, vendors, business partners and distribution channels is currently unknown. The Company is closely monitoring the impact of this evolving situation on all aspects of its business. While COVID-19 did not materially affect the Company&#x2019;s financial results and business operations in the Company&#x2019;s three and nine months ended September 30, 2020, the Company is unable to predict the impact that COVID-19 may have on its financial position and operations moving forward due to numerous uncertainties. These estimates may change as new events occur and additional information is obtained, and actual results could differ materially from these estimates under different assumptions or conditions. The Company will continue to assess the evolving impact of COVID-19 and will make adjustments to its operations as necessary.&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</rgen:RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Recent Accounting Standards Updates &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;We consider the applicability and impact of all Accounting Standards Updates on the Company&#x2019;s consolidated financial statements. Updates not listed below were assessed and determined to be either not applicable or are expected to have minimal impact on the Company&#x2019;s consolidated financial position or results of operations. Recently issued Accounting Standards Updates that we feel may be applicable to the Company are as follows: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Recently Issued Accounting Standard Updates &#x2013; Adopted During the Period &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In August 2018, the Financial Accounting Standards Board (&#x201c;FASB&#x201d;) issued Accounting Standards Update No. (&#x201c;ASU&#x201d;) &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-13,&lt;/div&gt; &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Fair Value Measurement (Topic 820): Disclosure Framework &#x2013; Changes to the Disclosure Requirements for Fair Value Measurement.&#x201d; &lt;/div&gt;&lt;/div&gt;ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-13&lt;/div&gt; includes amendments that aim to improve the effectiveness of fair value measurement disclosures. The amendments in this guidance modify the disclosure requirements on fair value measurements based on the concepts in FASB Concepts Statement, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Conceptual Framework for Financial Reporting - Chapter 8: Notes to Financial Statements&lt;/div&gt;&lt;/div&gt;,&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201d;&lt;/div&gt;&lt;/div&gt; including the consideration of costs and benefits. The Company adopted ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-13&lt;/div&gt; on January&#160;1, 2020. The adoption did not have a material impact on the Company&#x2019;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In August 2018, the FASB issued ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-15,&lt;/div&gt; &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Intangibles &#x2013; Goodwill and Other &#x2013; &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Internal-Use&lt;/div&gt; Software (Subtopic &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;350-40):&lt;/div&gt; Customer&#x2019;s Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement That Is a Service Contract.&#x201d; &lt;/div&gt;&lt;/div&gt;ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-15&lt;/div&gt; aligns the requirements for capitalizing implementation costs incurred in a hosting arrangement that is a service contract with the requirements for capitalizing implementation costs incurred to develop or obtain &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;internal-use&lt;/div&gt; software (and hosting arrangements that include an &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;internal-use&lt;/div&gt; software license). The guidance also requires the entity to expense the capitalized implementation costs of a hosting arrangement that is a service contract over the term of the hosting arrangement, which includes reasonably certain renewals. The Company adopted ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-13&lt;/div&gt; on January&#160;1, 2020. The adoption did not have a material impact on the Company&#x2019;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In June 2016, the FASB issued ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2016-13,&lt;/div&gt; &#x201c;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Financial Instruments-Credit Losses (Topic 326).&#x201d;&lt;/div&gt;&lt;/div&gt; ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2016-13&lt;/div&gt; significantly changes how entities will account for credit losses for most financial assets and certain other instruments that are not measured at fair value through net income. ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2016-13&lt;/div&gt; replaces the existing incurred loss model with an expected credit loss model that requires entities to estimate an expected lifetime credit loss on most financial assets and certain other instruments, including short-term trade receivables and contract assets, and expands disclosure requirements for credit quality of financial assets. The Company adopted ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2016-13&lt;/div&gt; on January&#160;1, 2020. The Company assessed all potential impacts that the adoption of this guidance has on its consolidated financial statements. Based on the composition of the Company&#x2019;s investment portfolio, accounts receivable, current market conditions and historical credit loss activity, the adoption of ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2016-13&lt;/div&gt; by the Company did not have a material impact on its consolidated financial position, results of operations or cash flows as of and for the three and nine months ended September&#160;30, 2020. The Company continues to monitor processes and controls for indications of an adjustment for future economic conditions at quarterly and annual reporting periods. See Note 5, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Credit Losses,&#x201d; &lt;/div&gt;&lt;/div&gt;below for more information on the Company&#x2019;s adoption of ASC 326.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In November 2018, the FASB issued ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-18,&lt;/div&gt; &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Collaborative Arrangements (Topic 808): Clarifying the Interaction between Topic 808 and Topic 606.&#x201d; &lt;/div&gt;&lt;/div&gt;ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-18&lt;/div&gt; clarifies the interaction between Topic 808, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Collaborative Arrangements,&#x201d; &lt;/div&gt;&lt;/div&gt;and Topic 606, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Revenue from Contracts with Customers,&#x201d; &lt;/div&gt;&lt;/div&gt;by making targeted improvements to GAAP for collaborative arrangements and providing guidance on whether certain transactions between collaborative arrangement participants should be accounted for with revenue under Topic 606. This includes improving comparability in the presentation of revenue for certain transactions between collaborative arrangement participants by allowing presentation of the units of account in collaborative arrangements that are within the scope of Topic 606 together with revenue accounted for under Topic 606. The Company adopted ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-13&lt;/div&gt; on January&#160;1, 2020. The adoption did not have a material impact on the Company&#x2019;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In December 2019, the FASB issued ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2019-12,&lt;/div&gt; &#x201c;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Income Taxes (Topic 740) &#x2013; Simplifying the Accounting for Income Taxes.&#x201d; &lt;/div&gt;&lt;/div&gt;ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2019-12&lt;/div&gt; simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740, including, but not limited to, the exception to the incremental approach for intraperiod tax allocation when there is a loss from continuing operations and income or a gain from other items, the exceptions related to the recognition of a deferred tax liability related to an equity method investment and the exception to methodology for calculating income taxes in an interim period when a &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;year-to-date&lt;/div&gt;&lt;/div&gt; loss exceeds the anticipated loss for the year. The Company adopted ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2018-13&lt;/div&gt; on January&#160;1, 2020. The adoption did not have a material impact on the Company&#x2019;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Recently Issued Accounting Standard Updates &#x2013; Not Yet Adopted &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In August 2020, the FASB issued ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2020-06,&lt;/div&gt; &#x201c;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Debt - Debt with Conversion and Other Options (Subtopic &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;470-20)&lt;/div&gt; and Derivatives and Hedging - Contracts in Entity&lt;/div&gt;&lt;/div&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x2019;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;s Own Equity (Subtopic &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;815-40).&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201d;&lt;/div&gt;&lt;/div&gt; ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2020-06&lt;/div&gt; simplifies the accounting for convertible debt instruments and convertible preferred stock by reducing the number of accounting models and the number of embedded conversion features that could be recognized separately from the primary contract. ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2020-06&lt;/div&gt; also enhances transparency and improves disclosures for convertible instruments and earnings per share guidance. ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2020-06&lt;/div&gt; is effective for annual reporting periods beginning after December&#160;15, 2021, including interim periods within those fiscal years. Early adoption is permitted, but no earlier than fiscal years beginning after December&#160;15, 2020. This update permits the use of either the modified retrospective or fully retrospective method of transition. The Company is currently evaluating the timing and impact of the adoption of ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2020-06&lt;/div&gt; on the Company&#x2019;s consolidated financial statements.&lt;/div&gt; </us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:FairValueDisclosuresTextBlock contextRef="P01_01_2020To09_30_2020">
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Fair Value Measurements &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&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;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 3%;"/&gt;
&lt;td style="width: 1%; vertical-align: bottom;"/&gt;
&lt;td style="width: 7%;"/&gt;
&lt;td style="width: 1%; vertical-align: bottom;"/&gt;
&lt;td style="width: 88%;"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: top;"&gt;Level&#160;1&#160;&#x2013;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: top;"&gt;Valuations based on unadjusted quoted prices in active markets for identical assets or liabilities that the Company has the ability to access.&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"/&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: top;"&gt;Level&#160;2&#160;&#x2013;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: top;"&gt;Valuations based on quoted prices for similar assets or liabilities in active markets, quoted prices for identical or similar assets or liabilities in markets that are not active and models for which all significant inputs are observable, either directly or indirectly.&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"/&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: top;"&gt;Level&#160;3&#160;&#x2013;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: top;"&gt;Valuations based on inputs that are unobservable and significant to the overall fair value measurement.&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&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;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;As of September&#160;30, 2020 and December&#160;31, 2019, cash and cash equivalents on the Company&#x2019;s consolidated balance sheets included $395.6&#160;million and $415.6&#160;million, respectively, in a money market account. These funds are valued on a recurring basis using Level&#160;1 inputs. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In July 2019, the Company issued $287.5&#160;million aggregate principal amount of the Company&#x2019;s 0.375% Convertible Senior Notes due July 15, 2024 (the &#x201c;2019 Notes&#x201d;). Interest is payable semi-annually in arrears on January&#160;15 and July&#160;15 of each year. The 2019 Notes will mature on July&#160;15, 2024&lt;div style="display:inline;"&gt;,&lt;/div&gt; unless earlier converted or repurchased in accordance with their terms. As of September&#160;30, 2020, the carrying value of the 2019 Notes was $240.9&#160;million, net of unamortized discount, and the fair value of the 2019 Notes was $416.0&#160;million. The fair value of the 2019 Notes is a Level&#160;1 valuation and was determined based on the most recent trade activity of the 2019 Notes as of September&#160;30, 2020. The 2019 Notes are discussed in more detail in Note 8, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Convertible Senior Notes&#x201d; &lt;/div&gt;&lt;/div&gt;to these consolidated financial statements.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The Company&#x2019;s &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-financial&lt;/div&gt; assets include goodwill and other intangible assets, which we classify as Level&#160;3 items. These assets are measured at fair value on a &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-recurring&lt;/div&gt; basis as part of our impairment testing. See Note 6, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Goodwill and Intangible Assets,&#x201d; &lt;/div&gt;&lt;/div&gt;below for additional information related to goodwill and intangible assets, and our impairment testing.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;During the three and nine months ended September&#160;30, 2020, there were no remeasurements to fair value of financial assets and liabilities that are not measured at fair value on a recurring basis. &lt;/div&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="PAsOn09_30_2020_FairValueInputsLevel1MemberusgaapFairValueByFairValueHierarchyLevelAxis_MoneyMarketFundsMemberusgaapCashAndCashEquivalentsAxis"
      decimals="-5"
      unitRef="Unit_USD">395600000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="PAsOn12_31_2019_FairValueInputsLevel1MemberusgaapFairValueByFairValueHierarchyLevelAxis_MoneyMarketFundsMemberusgaapCashAndCashEquivalentsAxis"
      decimals="-5"
      unitRef="Unit_USD">415600000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="PAsOn07_31_2019_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_USD">287500000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="PAsOn09_30_2020_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="5"
      unitRef="Unit_pure">0.00375</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentMaturityDate contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">2024-07-15</us-gaap:DebtInstrumentMaturityDate>
    <us-gaap:DebtInstrumentFrequencyOfPeriodicPayment contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">semi-annually</us-gaap:DebtInstrumentFrequencyOfPeriodicPayment>
    <us-gaap:LongTermDebt
      contextRef="PAsOn07_31_2019_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">240900000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebtFairValue
      contextRef="PAsOn07_31_2019_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">416000000.0</us-gaap:LongTermDebtFairValue>
    <us-gaap:BusinessCombinationDisclosureTextBlock contextRef="P01_01_2020To09_30_2020">
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;3.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Acquisitions &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Engineered Molding Technology LLC &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;On July&#160;13, 2020, the Company completed the acquisition of 100% of the membership interests of Engineered Molding Technology LLC (&#x201c;EMT&#x201d;), a New York limited liability&#160;company&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;,&lt;/div&gt; pursuant to a Membership Interest Purchase Agreement, dated June&#160;26, 2020, by and among the Company, EMT, and Michael Pandori and Todd Etesse, the legal and beneficial owners of EMT (such acquisition, the &#x201c;EMT Acquisition&#x201d;). &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;EMT, which is headquartered in Clifton Park, New York, is an innovator and manufacturer of &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;single-use&lt;/div&gt; silicone assemblies and components used in the manufacturing of biologic drugs. EMT&#x2019;s standard and custom molding as well as their over-molded connectors and silicone tubing products are key components in &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;single-use&lt;/div&gt; filtration and chromatography systems. EMT&#x2019;s products will complement and expand Repligen&#x2019;s &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;single-use&lt;/div&gt; product offerings.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Consideration Transferred &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The EMT &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;Acquisition&lt;/div&gt; was accounted for as a purchase of a business under ASC&#160;805, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Business Combinations&#x201d;. &lt;/div&gt;&lt;/div&gt;Total consideration paid was $28.5&#160;million&lt;div style="display:inline;"&gt;,&lt;/div&gt; which included $2.2&#160;million&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;deposited into an escrow account against which the Company may make claim&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;s&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;for indemnification&lt;div style="display:inline;"&gt;.&lt;/div&gt; Under the acquisition method of accounting, the net assets of EMT were recorded as of the acquisition date, at their respective fair values, and consolidated with those of Repligen. The fair value of the net tangible assets acquired is estimated to be approximately $1.5&#160;million, the fair value of the intangible assets acquired is estimated to be $14.4&#160;million, and the residual goodwill is estimated to be approximately $12.6&#160;million. The estimated consideration and preliminary purchase price information has been prepared using a preliminary valuation. The preparation of the valuation required the use of significant assumptions and&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;estimates&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;. Critical estimates included, but were not&#160;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;limited to, future expected cash flows, including projected revenues and expenses, and the applicable discount rates. These estimates were based on assumptions that Repligen believes to be reasonable. However, actual results may differ from these estimates. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Acquisition&lt;div style="display:inline;"&gt;-&lt;/div&gt;related costs are not included as a component of consideration transferred but are expensed in the periods in which the costs are incurred. The Company incurred $1.0&#160;million and $1.1&#160;million of acquisition related costs during the three and nine months ended September&#160;30, 2020. The transaction costs are included in selling, general and &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;administrative&lt;/div&gt; expenses in the consolidated statements of comprehensive income (loss). &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Fair Value of Net Assets Acquired &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The allocation of purchase price is based on the fair value of assets acquired and liabilities assumed as of the acquisition date, based on the preliminary valuation. As additional information becomes available, the Company may further revise its preliminary purchase price allocation during the remainder of the measurement period (which will not exceed 12 months from July&#160;13, 2020). Any such revisions or changes may be material. The components and allocation of the purchase price consists of the following amounts (amounts in thousands): &lt;/div&gt;&lt;/div&gt;  &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 88%; font-family: 'Times New Roman';"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Cash&#160;and&#160;cash&#160;equivalents&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;69&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accounts receivable&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,057&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Inventory&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;449&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Prepaid expenses and other current assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;7&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Fixed assets, net&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;472&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Operating lease right of use assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,050&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer relationships&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;11,080&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Developed technology&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;2,910&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademark and tradename&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;320&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Non-compete&lt;/div&gt; agreements&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;50&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Goodwill&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;12,573&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accounts payable&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(283&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accrued liabilities&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(190&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Operating lease liability&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(211&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Operating lease liability, long-term&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(839&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Fair value of net assets acquired&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;$&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;28,514&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Acquired Goodwill &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The goodwill of $12.6&#160;million represents future economic benefits expected to arise from anticipated synergies from the integration of EMT. These synergies include certain cost savings, operating efficiencies and other strategic benefits projected to be achieved as a result of the EMT Acquisition. Substantially all of the goodwill recorded is expected to be deductible for income tax purposes. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Intangible Assets &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The following table sets forth the components of the identified intangible assets associated with the EMT Acquisition and their estimated useful lives: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 68%;"/&gt;
&lt;td style="width: 9%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 9%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Useful&#160;life&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Fair&#160;Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer relationships&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14&#160;years&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;11,080&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Developed technology&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;11 years&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;2,910&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademark and tradename&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14 years&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;320&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Non-competition&lt;/div&gt; agreements&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3 years&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;50&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14,360&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Revenue, Net Income and Pro Forma Presentation &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company has included the operating results of EMT in its consolidated statements of comprehensive income (loss) since the July&#160;13, 2020 acquisition date. The Company does not consider this acquisition to be material to its consolidated statements of comprehensive income (loss) and therefore has not included pro forma results. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;C Technologies, Inc. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;On May&#160;31, 2019, Repligen acquired C Technologies, pursuant to the terms of a Stock Purchase Agreement (the &#x201c;Agreement&#x201d;), by and among Repligen, C Technologies and Craig Harrison, an individual and sole stockholder of C Technologies (such acquisition, the &#x201c;C Technologies Acquisition&#x201d;). &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Acquisition-related costs are not included as a component of consideration transferred but are expensed in the periods in which the costs are incurred. The Company incurred $4.0&#160;million in transaction costs for the nine months ended September&#160;30, 2019. The transaction costs are included in selling, general and administrative expenses in the consolidated statements of comprehensive income (loss). In connection with the transaction, an additional $9.0&#160;million was paid to employees during the second quarter of 2020, based on their continued employment with the Company one year after the date of the close of the C Technologies Acquisition.&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;The&lt;/div&gt;&#160;Company has recognized $3.7&#160;million of compensation expense associated&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;with&lt;/div&gt; this amount due to employees &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;during the nine months ended September 30, 2020&#160;&lt;/div&gt;and has recognized $9.0&#160;million of compensation expense associated with this amount due since the C Technologies Acquisition. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Fair Value of Net Assets Acquired &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The allocation of purchase price is based on the fair value of assets acquired and liabilities assumed as of the acquisition date, based on the preliminary valuation. The Company obtained this information during due diligence and through other sources. In the months after closing, the Company obtained additional information about these assets and liabilities as it learned more about C Technologies. The Company refined the estimates of fair value to more accurately allocate the purchase price. Only items identified as of the acquisition date were considered for subsequent adjustment. We made appropriate adjustments to the purchase price allocation during the measurement period, which was one year from the acquisition date. The components and allocation of the purchase price consists of the following amounts (amounts in thousands): &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 87%; font-family: 'Times New Roman';"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Cash&#160;and&#160;cash&#160;equivalents&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,795&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Restricted cash&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;26,933&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accounts receivable&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,044&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Inventory&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,783&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Prepaid expenses and other current assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;93&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Fixed assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;40&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Operating lease right of use asset&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,836&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer relationships&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;59,680&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Developed technology&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;28,920&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademark and tradename&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,570&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Non-competition&lt;/div&gt; agreements&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;660&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Goodwill&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;142,314&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Deferred taxes&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;895&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accounts payable&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(436&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accrued liabilities&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(2,767&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accrued bonus&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(26,928&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Deferred revenue&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(1,709&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Operating lease liability&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(51&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Operating lease liability, long-term&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(3,785&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Fair value of net assets acquired&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;$&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;239,887&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Acquired Goodwill &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The goodwill of $142.3&#160;million represents future economic benefits expected to arise from synergies from combining operations and commercial organizations to increase market presence and the extension of existing customer relationships. Substantially all of the goodwill recorded is expected to be deductible for income tax purposes. Pursuant to the Company&#x2019;s business combination accounting policy included in Note 2, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Summary of Significant Accounting Policies &#x2013; Business Combinations, Goodwill and Intangible Assets,&lt;/div&gt;&lt;/div&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201d;&lt;/div&gt;&lt;/div&gt; of the Company&#x2019;s Annual Report on Form &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;10-K&lt;/div&gt; for the fiscal year ended December&#160;31, 2019, the Company&lt;/div&gt; &lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;recorded goodwill adjustments for the effects on goodwill of changes to net assets acquired during the period that such change is identified, provided that any such change is within the measurement period (up to one year from the date of the acquisition). In March 2020, the Company recorded an adjustment to goodwill of $0.3&#160;million related to additional state income tax liabilities to be paid to the seller, which were incurred from the Company&#x2019;s finalized 338(h)(10) tax election.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Revenue, Net Income and Pro Forma Presentation &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company recorded revenue from C Technologies of $9.0&#160;million and $23.3&#160;million for the three and nine months ended September&#160;30, 2020, respectively, and $16.4&#160;million from May&#160;31, 2019, the date of acquisition, to December&#160;31, 2019. The Company recorded a net income from C Technologies&#x2019; results of operations of $2.1&#160;million and a net loss of $0.8&#160;million for the three and nine months ended September&#160;30, 2020, respectively, and a net loss of $7.4&#160;million from May&#160;31, 2019 to December&#160;31, 2019. The Company has included the operating results of C Technologies in its consolidated statements of comprehensive income (loss) since the May&#160;31, 2019 acquisition date. The following pro forma financial information presents the combined results of operations of Repligen and C Technologies as if the acquisition had occurred on January&#160;1, 2019 after giving effect to certain pro forma adjustments. The pro forma adjustments reflected herein include only those adjustments that are directly attributable to the C Technologies Acquisition, factually supportable and have a recurring impact. These pro forma adjustments include amortization expense on the acquired identifiable intangible assets, adjustments to stock-based compensation expense for equity compensation issued to C Technologies employees and the income tax effect of the adjustments made. In addition, acquisition-related transaction costs and an accounting adjustment to record inventory at fair value were excluded from pro forma net income in 2019. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Prior to the C Technologies Acquisition, C Technologies did not generate monthly or quarterly financial statements that were prepared in accordance with GAAP. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The following pro forma financial information does not reflect any adjustments for anticipated expense savings resulting from the acquisition and is not necessarily indicative of the operating results that would have actually occurred had the transaction been consummated on January&#160;1, 2019 or of future results (amounts in thousands, except per share data): &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 79%;"/&gt;
&lt;td style="width: 13%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Nine&#160;Months&#160;Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Pro forma total revenue&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;209,960&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Pro forma net income&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;21,012&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Pro forma earnings per share:&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Basic&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.45&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Diluted&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.44&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="2"
      unitRef="Unit_pure">1</us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">28500000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <rgen:BusinessCombinationConsiderationIndemnificationEscrow
      contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">2200000</rgen:BusinessCombinationConsiderationIndemnificationEscrow>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets
      contextRef="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">1500000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">14400000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:Goodwill
      contextRef="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">12600000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="P07_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">1000000.0</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:BusinessCombinationAcquisitionRelatedCosts
      contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">1100000</us-gaap:BusinessCombinationAcquisitionRelatedCosts>
    <us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis">The components and allocation of the purchase price consists of the following amounts (amounts in thousands): &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 88%; font-family: 'Times New Roman';"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Cash&#160;and&#160;cash&#160;equivalents&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;69&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accounts receivable&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,057&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Inventory&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;449&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Prepaid expenses and other current assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;7&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Fixed assets, net&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;472&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Operating lease right of use assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,050&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer relationships&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;11,080&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Developed technology&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;2,910&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademark and tradename&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;320&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Non-compete&lt;/div&gt; agreements&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;50&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Goodwill&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;12,573&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accounts payable&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(283&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accrued liabilities&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(190&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Operating lease liability&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(211&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Operating lease liability, long-term&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(839&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Fair value of net assets acquired&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;$&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;28,514&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">69000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">1057000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">449000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">7000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">472000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">1050000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="PAsOn07_13_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">11080000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="PAsOn07_13_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">2910000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_TrademarksAndTradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">320000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">50000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:Goodwill
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">12573000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">283000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">190000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">211000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">839000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="PAsOn07_13_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">28514000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetResidualValue
      contextRef="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_GoodwillMemberusgaapFairValueByAssetClassAxis"
      decimals="-5"
      unitRef="Unit_USD">12600000</us-gaap:AcquiredFiniteLivedIntangibleAssetResidualValue>
    <us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The following table sets forth the components of the identified intangible assets associated with the EMT Acquisition and their estimated useful lives: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 68%;"/&gt;
&lt;td style="width: 9%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 9%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Useful&#160;life&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Fair&#160;Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer relationships&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14&#160;years&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;11,080&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Developed technology&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;11 years&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;2,910&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademark and tradename&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14 years&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;320&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Non-competition&lt;/div&gt; agreements&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3 years&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;50&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14,360&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife contextRef="P01_01_2020To09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis">P14Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="PAsOn09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">11080000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife contextRef="P01_01_2020To09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis">P11Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="PAsOn09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">2910000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_TradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P14Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_TradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">320000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P3Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">50000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">14360000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed
      contextRef="P01_01_2019To09_30_2019_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis"
      decimals="-5"
      unitRef="Unit_USD">4000000.0</us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed>
    <us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts
      contextRef="PAsOn06_30_2020_TrustForBenefitOfEmployeesMembersrtTitleOfIndividualAxis"
      decimals="-5"
      unitRef="Unit_USD">9000000.0</us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts>
    <us-gaap:CompensationExpenseExcludingCostOfGoodAndServiceSold
      contextRef="P01_01_2020To09_30_2020_TrustForBenefitOfEmployeesMembersrtTitleOfIndividualAxis"
      decimals="-5"
      unitRef="Unit_USD">3700000</us-gaap:CompensationExpenseExcludingCostOfGoodAndServiceSold>
    <us-gaap:CompensationExpenseExcludingCostOfGoodAndServiceSold
      contextRef="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_TrustForBenefitOfEmployeesMembersrtTitleOfIndividualAxis"
      decimals="-5"
      unitRef="Unit_USD">9000000.0</us-gaap:CompensationExpenseExcludingCostOfGoodAndServiceSold>
    <us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock contextRef="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis">The components and allocation of the purchase price consists of the following amounts (amounts in thousands):
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 87%; font-family: 'Times New Roman';"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Cash&#160;and&#160;cash&#160;equivalents&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,795&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Restricted cash&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;26,933&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accounts receivable&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,044&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Inventory&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,783&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Prepaid expenses and other current assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;93&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Fixed assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;40&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Operating lease right of use asset&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,836&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer relationships&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;59,680&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Developed technology&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;28,920&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademark and tradename&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,570&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Non-competition&lt;/div&gt; agreements&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;660&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Goodwill&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;142,314&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Deferred taxes&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;895&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accounts payable&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(436&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accrued liabilities&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(2,767&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accrued bonus&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(26,928&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Deferred revenue&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(1,709&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Operating lease liability&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(51&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Operating lease liability, long-term&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(3,785&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Fair value of net assets acquired&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;$&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;239,887&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">3795000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">26933000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">3044000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">3783000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">93000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">40000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">3836000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">59680000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">28920000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_TrademarksAndTradeNamesMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">1570000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_NoncompeteAgreementsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">660000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:Goodwill
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">142314000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">895000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">436000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">2767000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">26928000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">1709000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">51000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent>
    <rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">3785000</rgen:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">239887000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetResidualValue
      contextRef="PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis_GoodwillMemberusgaapFairValueByAssetClassAxis"
      decimals="-5"
      unitRef="Unit_USD">142300000</us-gaap:AcquiredFiniteLivedIntangibleAssetResidualValue>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">300000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="P07_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">9000000.0</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">23300000</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
      contextRef="P05_31_2019To12_31_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">16400000</us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual>
    <us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss
      contextRef="P07_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">2100000</us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss>
    <us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss
      contextRef="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">800000</us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss>
    <us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss
      contextRef="P05_31_2019To12_31_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">7400000</us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss>
    <us-gaap:BusinessAcquisitionProFormaInformationTextBlock contextRef="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The following pro forma financial information does not reflect any adjustments for anticipated expense savings resulting from the acquisition and is not necessarily indicative of the operating results that would have actually occurred had the transaction been consummated on January&#160;1, 2019 or of future results (amounts in thousands, except per share data): &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 79%;"/&gt;
&lt;td style="width: 13%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Nine&#160;Months&#160;Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Pro forma total revenue&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;209,960&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Pro forma net income&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;21,012&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Pro forma earnings per share:&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Basic&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.45&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Diluted&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.44&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:BusinessAcquisitionProFormaInformationTextBlock>
    <us-gaap:BusinessAcquisitionsProFormaRevenue
      contextRef="P01_01_2019To09_30_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">209960000</us-gaap:BusinessAcquisitionsProFormaRevenue>
    <us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss
      contextRef="P01_01_2019To09_30_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">21012000</us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss>
    <us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic
      contextRef="P01_01_2019To09_30_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.45</us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic>
    <us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted
      contextRef="P01_01_2019To09_30_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.44</us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted>
    <us-gaap:RevenueFromContractWithCustomerTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;4.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Revenue Recognition &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The Company generates revenue from the sale of bioprocessing products, equipment devices, and related consumables used with these equipment devices to customers in the life science and biopharmaceutical industries. Under ASC 606, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Revenue from Contracts with Customers,&#x201d; &lt;/div&gt;&lt;/div&gt;revenue is recognized when, or as, obligations under the terms of a contract are satisfied, which occurs when control of the promised products or services is transferred to customers.&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Disaggregation of Revenue &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Revenues for the three and nine months ended September&#160;30, 2020 and 2019 were as follows: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 66%;"/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Three Months Ended&lt;br/&gt; September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Nine Months Ended&lt;br/&gt; September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="14" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Product revenue&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;94,029&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;69,419&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;257,521&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;200,701&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Royalty and other income&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;31&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;26&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;91&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;70&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total revenue&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;94,060&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;69,445&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;257,612&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;200,771&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="text-align: left;"&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;When disaggregating revenue, the Company considered all of the economic factors that may affect its revenues. Because all of its revenues are from bioprocessing customers, there are no differences in the nature, timing and uncertainty of the Company&#x2019;s &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/div&gt; &lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;revenues and cash flows from any of its product lines. However, given that the Company&#x2019;s revenues are generated in different geographic regions, factors such as regulatory 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 revenues are generated from two customers; therefore, economic factors specific to these two customers could impact the nature, timing and uncertainty of the Company&#x2019;s revenues and cash flows. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;Disaggregated revenue from contracts with customers by geographic region can be found in Note 15, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Segment Reporting,&#x201d;&lt;/div&gt;&lt;/div&gt; below.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Revenue from significant customers that represent 10% or more of the Company&#x2019;s total revenue is as follows: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 69%;"/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Three&#160;Months&#160;Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Nine&#160;Months&#160;Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="14" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Cytiva (formerly GE Healthcare)&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;23,759&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;MilliporeSigma&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;9,458&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;29,387&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;28,354&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Chromatography Products &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The Company&#x2019;s chromatography products include a number of products used in the downstream purification and quality control of biological drugs. The majority of chromatography revenue relates to the OPUS&lt;div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"&gt;&#xae;&lt;/div&gt; &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;pre-packed&lt;/div&gt; chromatography column line. OPUS columns are designed to be disposable following a production campaign. Each OPUS column is delivered &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;pre-packaged&lt;/div&gt; with the customer&#x2019;s choice of chromatography resin, which is either provided by the Company for the customer or customer supplied. In either scenario, the OPUS column and resin are not interdependent of one another and are therefore considered distinct products that represent separate performance obligations. Chromatography product revenue is generally recognized at a point in time upon transfer of control to the customer.&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Filtration Products &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The Company&#x2019;s filtration products generate revenue through the sale of KrosFlo&lt;div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"&gt;&#xae;&lt;/div&gt; hollow fiber TFF systems,&#160;TangenX&lt;div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"&gt;&#xae;&lt;/div&gt; flat sheet cassettes, Spectrum&lt;div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"&gt;&#xae;&lt;/div&gt; hollow fiber filters, membranes and modules, XCell ATF&lt;div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"&gt;&#xae;&lt;/div&gt; systems and related consumables&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;.&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;Supporting our systems, we also sell&#160;&lt;/div&gt;&#160;ProConnex&lt;div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"&gt;&#xae;&lt;/div&gt; &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;single-use&lt;/div&gt; flow path assemblies&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;and custom silicone-based, single-use flow path assemblies and components from EMT&lt;/div&gt;.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company&#x2019;s KrosFlo systems are used in the filtration, isolation, purification and concentration of biologics and diagnostic products. TFF is a rapid and efficient method for separation and purification of biomolecules that is widely used in laboratory, process development and process scale applications in biopharmaceutical manufacturing. Sales of large-scale systems generally include components and consumables as well as training and installation services at the request of the customer. Because the initial sale of components and consumables are necessary for the operation of the system, such items are combined with the systems as a single performance obligation. Training and installation services do not significantly modify or customize these systems and therefore represent a distinct performance obligation. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company&#x2019;s TangenX flat sheet cassettes (SIUS&lt;div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"&gt;&#xae;&lt;/div&gt;, SIUS Gamma&lt;div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"&gt;&#xae;&lt;/div&gt; and PRO) are not highly interdependent on one another and are therefore considered distinct products that represent separate performance obligations. Product revenue from the sale of TangenX flat sheet cassettes are generally recognized at a point in time upon transfer of control of the customer. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The Company&#x2019;s other filtration product offerings are not highly interdependent of one another and are therefore considered distinct products that represent separate performance obligations. Revenue on these products is generally recognized at a point in time upon transfer of control to the customer. The Company invoices the customer for the installation and training services in an amount that directly corresponds with the value to the customer of the Company&#x2019;s performance to date; therefore, revenue recognized is based on the amount billable to the customer in accordance with the practical expedient under ASC &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;606-10-55-18.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company also markets the XCell ATF system, a technologically advanced filtration device used in upstream processes to continuously remove cellular metabolic waste products during the course of a fermentation run, freeing healthy cells to continue producing the biologic drug of interest. XCell ATF systems typically include a filtration system and consumables (i.e., tubing sets, metal stands) as well as training and installation services at the request of the customer. The filtration system and consumables are considered distinct products and therefore represent separate performance obligations. First time purchasers of the systems typically purchase a controller that is shipped with the tubing set(s) and metal stand(s). The controller is not considered distinct as it is a proprietary product that is highly interdependent with the filtration system; therefore, the controller is combined with the filtration system and accounted for as a single performance obligation. The training and installation services do not significantly modify or customize the XCell ATF system and therefore represent a distinct performance obligation. XCell&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;ATF system product revenue related to the filtration system (including the controller if applicable) and consumables is generally&lt;/div&gt; &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;recognized at a point in time upon transfer of control to the customer. XCell ATF system service revenue related to training and installation services is generally recognized over time, as the customer simultaneously receives and consumes the benefits as the Company performs. The Company invoices the customer for the installation and training services in an amount that directly corresponds with the value to the customer of the Company&#x2019;s performance to date; therefore, revenue recognized is based on the amount billable to the customer in accordance with the practical expedient under ASC &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;606-10-55-18.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;On July&#160;13, 2020, the Company consummated the EMT Acquisition and added EMT&#x2019;s silicone-based, &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;single-use&lt;/div&gt; components and manifolds to its filtration franchise. These products are key components in &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;single-use&lt;/div&gt; filtration and chromatography systems and will help expand its line of &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;single-use&lt;/div&gt; ProConnex flow paths, streamline its supply chain for ATF and provide more flexibility as the Company scales and expands its &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;single-use&lt;/div&gt; and systems portfolios.&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Process Analytics Products &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The Process Analytics franchise generates revenue primarily through the sale of the SoloVPE and FlowVPE Slope Spectroscopy systems, consumables and service. These products complement and support the Company&#x2019;s existing Filtration, Chromatography and Proteins franchises as they allow end users to make &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;in-line&lt;/div&gt; protein concentration measurements in filtration, chromatography and fill-finish applications, designed to allow for real-time process monitoring.&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Protein Products &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The Company&#x2019;s Protein franchise generates revenue through the sale of Protein A affinity ligands and growth factors. Protein A ligands are an essential component of Protein A chromatography resins (media) used in the purification of virtually all &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;mAb-based&lt;/div&gt; drugs on the market or in development. The Company manufactures multiple forms of Protein A ligands under long-term supply agreements with major life sciences companies, who in turn sell their Protein A chromatography media to end users (biopharmaceutical manufacturers). The Company also manufactures growth factors for sale under long-term supply agreements with certain life sciences companies as well as&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;for&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;direct sales to its customers. Each protein product is considered distinct and therefore represents a separate performance obligation. Protein product revenue is generally recognized at a point in time upon transfer of control to the customer.&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Other Products &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company&#x2019;s other products include operating room products sold to hospitals. Other product revenue is generally recognized at a point in time upon transfer of control to the customer. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Transaction Price Allocated to Future Performance Obligations &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;Remaining performance obligations represents the transaction price of contracts for which work has not been performed or has been partially performed. The Company&#x2019;s future performance obligations relate primarily to the installation and training of certain of its systems sold to customers. These performance obligations are completed within one year of receipt of a purchase order from its customers. Accordingly, the Company has elected to not disclose the value of these unsatisfied performance obligations as provided under ASC &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;606-10-50-14.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Contract Balances from Contracts with Customers &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The following table provides information about receivables and deferred revenues from contracts with customers as of September&#160;30, 2020 (amounts in thousands): &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 88%; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balances from contracts with customers only:&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accounts receivable&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;55,830&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Deferred revenue (included in accrued liabilities in the consolidated balance sheets)&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;10,141&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Revenue recognized during the nine-month period ended September&#160;30, 2020 relating to:&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The beginning deferred revenue balance&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,133&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Changes in pricing related to products or services satisfied in previous periods&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The timing of revenue recognition, billings and cash collections results in the accounts receivables and deferred revenue balances on the Company&#x2019;s consolidated balance sheets.&#160;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;A contract asset is created when the Company satisfies a performance obligation by transferring a promised good to the customer. Contract assets may represent conditional or unconditional rights to consideration. The right is conditional, and recorded as a contract asset, if the Company must first satisfy another performance obligation in the contract before it is entitled to payment from the customer. Contract assets are transferred to billed receivables once the right becomes unconditional. If the Company has the unconditional right to receive consideration from the customer, the contract asset is accounted for as a billed receivable and presented separately from other contract assets. A right is unconditional if nothing other than the passage of time is required before payment of that consideration is due. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;When consideration is received, or such consideration is unconditionally due, from a customer prior to transferring goods or services to the customer under the terms of a contract, a contract liability is recorded. Contract liabilities are recognized as revenue after control of the products or services is transferred to the customer and all revenue recognition criteria have been met. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Costs to Obtain or Fulfill a Customer Contract &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company&#x2019;s sales commission structure is based on achieving revenue targets. The commissions are driven by revenue derived from customer purchase orders which are short term in nature. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;Applying the practical expedient in paragraph &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;340-40-25-4,&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; the Company recognizes the incremental costs of obtaining contracts as an expense when incurred if the amortization period of the assets that the Company otherwise would have recognized is one year or less. These costs are included in selling, general, and administrative expenses. When shipping and handling costs are incurred after a customer obtains control of the products, the Company accounts for these as costs to fulfill the promise and not as a separate performance obligation.&lt;/div&gt; </us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Revenues for the three and nine months ended September&#160;30, 2020 and 2019 were as follows: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 66%;"/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Three Months Ended&lt;br/&gt; September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Nine Months Ended&lt;br/&gt; September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="14" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Product revenue&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;94,029&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;69,419&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;257,521&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;200,701&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Royalty and other income&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;31&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;26&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;91&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;70&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total revenue&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;94,060&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;69,445&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;257,612&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;200,771&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P07_01_2020To09_30_2020_ProductMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">94029000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P07_01_2019To09_30_2019_ProductMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">69419000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2020To09_30_2020_ProductMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">257521000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2019To09_30_2019_ProductMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">200701000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P07_01_2020To09_30_2020_RoyaltyMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">31000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P07_01_2019To09_30_2019_RoyaltyMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">26000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2020To09_30_2020_RoyaltyMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">91000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2019To09_30_2019_RoyaltyMembersrtProductOrServiceAxis"
      decimals="-3"
      unitRef="Unit_USD">70000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">94060000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">69445000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">257612000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">200771000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <rgen:ScheduleOfRevenueByMajorCustomersTableTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Revenue from significant customers that represent 10% or more of the Company&#x2019;s total revenue is as follows: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 69%;"/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Three&#160;Months&#160;Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Nine&#160;Months&#160;Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="14" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Cytiva (formerly GE Healthcare)&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;23,759&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;MilliporeSigma&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;9,458&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;29,387&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;28,354&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </rgen:ScheduleOfRevenueByMajorCustomersTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2019To09_30_2019_CytivaMembersrtMajorCustomersAxis"
      decimals="-3"
      unitRef="Unit_USD">23759000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P07_01_2019To09_30_2019_MilliporeSigmaMembersrtMajorCustomersAxis"
      decimals="-3"
      unitRef="Unit_USD">9458000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2020To09_30_2020_MilliporeSigmaMembersrtMajorCustomersAxis"
      decimals="-3"
      unitRef="Unit_USD">29387000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="P01_01_2019To09_30_2019_MilliporeSigmaMembersrtMajorCustomersAxis"
      decimals="-3"
      unitRef="Unit_USD">28354000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The following table provides information about receivables and deferred revenues from contracts with customers as of September&#160;30, 2020 (amounts in thousands): &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 88%; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balances from contracts with customers only:&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accounts receivable&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;55,830&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Deferred revenue (included in accrued liabilities in the consolidated balance sheets)&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;10,141&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Revenue recognized during the nine-month period ended September&#160;30, 2020 relating to:&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The beginning deferred revenue balance&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,133&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Changes in pricing related to products or services satisfied in previous periods&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;$&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">55830000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:DeferredRevenue
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">10141000</us-gaap:DeferredRevenue>
    <us-gaap:ContractWithCustomerLiability
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">3133000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">0</us-gaap:ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod>
    <us-gaap:CreditLossFinancialInstrumentTextBlock contextRef="P01_01_2020To09_30_2020">
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;5.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Credit Losses &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;Effective January&#160;1, 2020, the Company adopted ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2016-13,&lt;/div&gt; &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Financial Instruments &#x2013; Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments,&#x201d;&lt;/div&gt;&lt;/div&gt; prospectively. ASU &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2016-13&lt;/div&gt; replaces the incurred loss impairment model with an expected credit loss impairment model for financial instruments, including trade receivables. The guidance requires entities to consider forward-looking information to estimate expected credit losses, resulting in earlier recognition of losses for receivables that are current or not yet due. Upon adoption, changes in the allowance were not material for the transition period starting January&#160;1, 2020 through the nine months ended September&#160;30, 2020.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company is exposed to credit losses primarily through sales of products and services. The Company&#x2019;s expected loss allowance methodology for accounts receivable is developed using historical collection experience, current and future economic and market conditions and a review of the current status of customers&#x2019; trade accounts receivables. Customers are pooled based on sharing specific risk factors, including geographic location. Due to the short-term nature of such receivables, the estimated accounts receivable that may not be collected is based on aging of the accounts receivable balances. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customers are assessed for credit worthiness upfront through a credit review, which includes assessment based on the Company&#x2019;s analysis of their financial statements when a credit rating is not available. The Company evaluates contract terms and conditions, country and political risk, and may require prepayment to mitigate risk of loss. Specific allowance amounts are established to record the appropriate provision for customers that have a higher probability of default. The Company monitors changes to the receivables balance on a timely basis, and balances are written off as they are determined to be uncollectable after all collection efforts have been exhausted. Estimates of potential credit losses are used to determine the allowance. It is based on assessment of anticipated payment and all other historical, current and future information that is reasonably available. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The accounts receivable balance on the Company&#x2019;s consolidated balance sheet as of September&#160;30, 2020 was $55.8&#160;million, net of $0.6&#160;million of allowances. The following table provides a roll-forward of the allowance for credit losses in 2020 that is deducted from the amortized cost basis of accounts receivable to present the net amount expected to be collected (amounts in thousands):&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 91%; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 4%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance at January&#160;1, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(525&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;Current period change&lt;/div&gt;&#160;for expected credit losses&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(133&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance at March&#160;31, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(658&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Current period change for write-offs&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;37&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top; background-color: rgb(204, 238, 255);"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Current period change for expected credit losses&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;83&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"/&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; break-inside: avoid;"&gt;
&lt;td style="vertical-align: top; background-color: rgb(255, 255, 255);"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance at June&#160;30, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);;text-align:right;"&gt;(538&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(255, 255, 255);"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; break-inside: avoid;"&gt;
&lt;td style="vertical-align: top; background-color: rgb(204, 238, 255);"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Current period change for expected credit losses&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;(83&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"/&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top; background-color: rgb(255, 255, 255);"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance at September&#160;30, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);;text-align:right;"&gt;(621&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(255, 255, 255);"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"/&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:CreditLossFinancialInstrumentTextBlock>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-5"
      unitRef="Unit_USD">55800000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-5"
      unitRef="Unit_USD">600000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock contextRef="P01_01_2020To09_30_2020">The following table provides a roll-forward of the allowance for credit losses in 2020 that is deducted from the amortized cost basis of accounts receivable to present the net amount expected to be collected (amounts in thousands):
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 91%; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 4%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance at January&#160;1, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(525&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;Current period change&lt;/div&gt;&#160;for expected credit losses&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(133&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance at March&#160;31, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(658&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Current period change for write-offs&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;37&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top; background-color: rgb(204, 238, 255);"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Current period change for expected credit losses&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;83&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"/&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; break-inside: avoid;"&gt;
&lt;td style="vertical-align: top; background-color: rgb(255, 255, 255);"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance at June&#160;30, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);;text-align:right;"&gt;(538&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(255, 255, 255);"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; break-inside: avoid;"&gt;
&lt;td style="vertical-align: top; background-color: rgb(204, 238, 255);"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Current period change for expected credit losses&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;(83&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"/&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top; background-color: rgb(255, 255, 255);"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance at September&#160;30, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);;text-align:right;"&gt;(621&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(255, 255, 255);"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"/&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(255, 255, 255);"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">525000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="P01_01_2020To03_31_2020"
      decimals="-3"
      unitRef="Unit_USD">-133000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="PAsOn03_31_2020"
      decimals="-3"
      unitRef="Unit_USD">658000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="P04_01_2020To06_30_2020"
      decimals="-3"
      unitRef="Unit_USD">37000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="P04_01_2020To06_30_2020"
      decimals="-3"
      unitRef="Unit_USD">83000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="PAsOn06_30_2020"
      decimals="-3"
      unitRef="Unit_USD">538000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">-83000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">621000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock contextRef="P01_01_2020To09_30_2020">
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;6.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Goodwill and Intangible Assets &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Goodwill &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;Goodwill represents the difference between the purchase price and the estimated fair value of identifiable assets acquired and liabilities assumed. Goodwill acquired in a business combination and determined to have an indefinite useful life is not amortized, but instead is tested for impairment at least annually in accordance with ASC 350, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Intangibles &#x2013; Goodwill and Other&#x201d;&lt;/div&gt;&lt;/div&gt;. The following table represents the change in the carrying value of goodwill for the nine months ended September&#160;30, 2020 (amounts in thousands):&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 87%; font-family: 'Times New Roman';"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance&#160;as&#160;of&#160;December&#160;31,&#160;2019&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;468,413&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Acquisition of Engineered Molding Technology&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;12,573&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Goodwill adjustment related to C Technologies, Inc.&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;293&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Cumulative translation adjustment&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;764&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance as of September&#160;30, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;482,043&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;During each of the fourth quarters of 2019, 2018 and 2017, the Company completed its annual impairment assessments and concluded that goodwill was not impaired in any of those years. The Company has not identified any &#x201c;triggering&#x201d; events which indicate an impairment of goodwill in the three and nine months ended September&#160;30, 2020. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Intangible Assets &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Intangible assets with a definitive life are amortized over their useful lives using the straight-line method, and the amortization expense is recorded within cost of product revenue and selling, general and administrative expenses in the Company&#x2019;s statements of comprehensive income (loss). Intangible assets and their related useful lives are reviewed at least annually to determine if any adverse conditions exist that would indicate the carrying value of these assets may not be recoverable. More frequent impairment assessments are conducted if certain conditions exist, including a change in the competitive landscape, any internal decisions to pursue new or different technology strategies, a loss of a significant customer, or a significant change in the marketplace, including changes in the prices paid for our products or changes in the size of the market for the Company&#x2019;s products. An impairment results if the carrying value of the asset exceeds the estimated fair value of the asset. If the estimate of an intangible asset&#x2019;s remaining useful life is changed, the remaining carrying amount of the intangible asset is amortized prospectively over the revised remaining useful life. The Company continues to believe that its intangible assets are recoverable at September&#160;30, 2020. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Indefinite-lived assets are reviewed for impairment at least annually. There has been no impairment of the Company&#x2019;s intangible assets for the periods presented. &lt;/div&gt;&lt;/div&gt;&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Intangible assets, net consisted of the following at September&#160;30, 2020: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 60%;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="14" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&#160;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Gross&lt;br/&gt; Carrying&lt;br/&gt; Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Accumulated&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Amortization&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Net&lt;br/&gt; Carrying&lt;br/&gt; Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted&lt;br/&gt; Average&lt;br/&gt; Useful&#160;Life&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(in&#160;years)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="10" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Finite-lived&#160;intangible&#160;assets:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Technology - developed&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;85,196&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(13,054&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;72,142&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;18&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Patents&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;240&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(240&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;8&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer relationships&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;172,325&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(33,861&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;138,464&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;15&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademarks&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;4,072&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(480&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,592&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;19&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Other intangibles&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,750&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(1,263&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;487&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total finite-lived intangible assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;263,583&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(48,898&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;214,685&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;16&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Indefinite-lived intangible asset:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademarks&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;700&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;700&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total intangible assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;264,283&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(48,898&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;215,385&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Intangible assets consisted of the following at December&#160;31, 2019: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 60%;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="14" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;December&#160;31,&#160;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Gross&lt;br/&gt; Carrying&lt;br/&gt; Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Accumulated&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Amortization&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Net&lt;br/&gt; Carrying&lt;br/&gt; Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted&lt;br/&gt; Average&lt;br/&gt; Useful&#160;Life&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(in&#160;years)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="10" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Finite-lived&#160;intangible&#160;assets:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Technology - developed&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;82,169&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(9,669&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;72,500&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;19&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Patents&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;240&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(240&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;8&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer relationships&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;160,825&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(25,642&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;135,183&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;15&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademarks&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,752&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(333&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,419&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;20&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Other intangibles&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,697&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(947&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;750&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total finite-lived intangible assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;248,683&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(36,831&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;211,852&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;16&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Indefinite-lived intangible asset:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademarks&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;700&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;700&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total intangible assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;249,383&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(36,831&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;212,552&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Amortization expense for finite-lived intangible assets was $4.0&#160;million and $3.9&#160;million for the three months ended September&#160;30, 2020 and 2019, respectively. Amortization expense was $11.8&#160;million and $9.6&#160;million for the nine months ended September&#160;30, 2020 and 2019, respectively. As of September&#160;30, 2020, the Company expects to record the following amortization expense in future periods (amounts in thousands): &lt;/div&gt;&lt;/div&gt;  &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 85%;"/&gt;
&lt;td style="width: 7%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.5pt;"&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;For the Nine Months Ended September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Estimated&lt;br/&gt; Amortization&lt;br/&gt; Expense&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2020 (remaining three months)&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,964&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;15,855&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;15,853&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;15,749&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2024&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;15,298&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2025 and thereafter&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;147,966&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;214,685&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfGoodwillTextBlock contextRef="P01_01_2020To09_30_2020">The following table represents the change in the carrying value of goodwill for the nine months ended September&#160;30, 2020 (amounts in thousands):
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 87%; font-family: 'Times New Roman';"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance&#160;as&#160;of&#160;December&#160;31,&#160;2019&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;468,413&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Acquisition of Engineered Molding Technology&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;12,573&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Goodwill adjustment related to C Technologies, Inc.&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;293&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Cumulative translation adjustment&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;764&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance as of September&#160;30, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;482,043&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">468413000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">12573000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="P01_01_2020To09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis"
      decimals="-3"
      unitRef="Unit_USD">293000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">-764000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">482043000</us-gaap:Goodwill>
    <rgen:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Intangible assets, net consisted of the following at September&#160;30, 2020: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 60%;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="14" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&#160;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Gross&lt;br/&gt; Carrying&lt;br/&gt; Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Accumulated&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Amortization&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Net&lt;br/&gt; Carrying&lt;br/&gt; Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted&lt;br/&gt; Average&lt;br/&gt; Useful&#160;Life&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(in&#160;years)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="10" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Finite-lived&#160;intangible&#160;assets:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Technology - developed&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;85,196&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(13,054&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;72,142&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;18&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Patents&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;240&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(240&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;8&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer relationships&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;172,325&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(33,861&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;138,464&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;15&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademarks&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;4,072&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(480&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,592&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;19&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Other intangibles&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,750&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(1,263&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;487&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total finite-lived intangible assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;263,583&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(48,898&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;214,685&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;16&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Indefinite-lived intangible asset:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademarks&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;700&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;700&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total intangible assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;264,283&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(48,898&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;215,385&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Intangible assets consisted of the following at December&#160;31, 2019: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 60%;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 4%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="14" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;December&#160;31,&#160;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Gross&lt;br/&gt; Carrying&lt;br/&gt; Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Accumulated&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Amortization&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Net&lt;br/&gt; Carrying&lt;br/&gt; Value&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted&lt;br/&gt; Average&lt;br/&gt; Useful&#160;Life&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(in&#160;years)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="10" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Finite-lived&#160;intangible&#160;assets:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Technology - developed&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;82,169&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(9,669&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;72,500&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;19&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Patents&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;240&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(240&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;8&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Customer relationships&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;160,825&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(25,642&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;135,183&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;15&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademarks&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,752&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(333&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,419&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;20&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Other intangibles&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,697&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(947&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;750&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total finite-lived intangible assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;248,683&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(36,831&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;211,852&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;16&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Indefinite-lived intangible asset:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Trademarks&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;700&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;700&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total intangible assets&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;249,383&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(36,831&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;212,552&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt; &lt;/table&gt; </rgen:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">85196000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">13054000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">72142000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="P01_01_2020To09_30_2020_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P18Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn09_30_2020_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">240000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn09_30_2020_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">240000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="P01_01_2020To09_30_2020_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P8Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">172325000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">33861000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">138464000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="P01_01_2020To09_30_2020_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P15Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn09_30_2020_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">4072000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn09_30_2020_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">480000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn09_30_2020_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">3592000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="P01_01_2020To09_30_2020_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P19Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn09_30_2020_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">1750000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn09_30_2020_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">1263000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn09_30_2020_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">487000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="P01_01_2020To09_30_2020_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P3Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">263583000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">48898000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">214685000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="P01_01_2020To09_30_2020">P16Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="PAsOn09_30_2020_TrademarksMemberusgaapIndefiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">700000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <rgen:IndefiniteLivedIntangibleAssetsNet
      contextRef="PAsOn09_30_2020_TrademarksMemberusgaapIndefiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">700000</rgen:IndefiniteLivedIntangibleAssetsNet>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">264283000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <rgen:IndefiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">48898000</rgen:IndefiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">215385000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn12_31_2019_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">82169000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn12_31_2019_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">9669000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn12_31_2019_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">72500000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="P01_01_2019To12_31_2019_DevelopedTechnologyRightsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P19Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn12_31_2019_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">240000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn12_31_2019_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">240000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="P01_01_2019To12_31_2019_PatentsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P8Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn12_31_2019_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">160825000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn12_31_2019_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">25642000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn12_31_2019_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">135183000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="P01_01_2019To12_31_2019_CustomerRelationshipsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P15Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn12_31_2019_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">3752000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn12_31_2019_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">333000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn12_31_2019_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">3419000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="P01_01_2019To12_31_2019_TrademarksMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P20Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn12_31_2019_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">1697000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn12_31_2019_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">947000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn12_31_2019_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">750000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="P01_01_2019To12_31_2019_OtherIntangibleAssetsMemberusgaapFiniteLivedIntangibleAssetsByMajorClassAxis">P3Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">248683000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">36831000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">211852000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="P01_01_2019To12_31_2019">P16Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="PAsOn12_31_2019_TrademarksMemberusgaapIndefiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">700000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <rgen:IndefiniteLivedIntangibleAssetsNet
      contextRef="PAsOn12_31_2019_TrademarksMemberusgaapIndefiniteLivedIntangibleAssetsByMajorClassAxis"
      decimals="-3"
      unitRef="Unit_USD">700000</rgen:IndefiniteLivedIntangibleAssetsNet>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">249383000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <rgen:IndefiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">36831000</rgen:IndefiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">212552000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="P07_01_2020To09_30_2020"
      decimals="-5"
      unitRef="Unit_USD">4000000.0</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="P07_01_2019To09_30_2019"
      decimals="-5"
      unitRef="Unit_USD">3900000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="P01_01_2020To09_30_2020"
      decimals="-5"
      unitRef="Unit_USD">11800000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="P01_01_2019To09_30_2019"
      decimals="-5"
      unitRef="Unit_USD">9600000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock contextRef="P01_01_2020To09_30_2020">As of September&#160;30, 2020, the Company expects to record the following amortization expense in future periods (amounts in thousands): &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 85%;"/&gt;
&lt;td style="width: 7%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.5pt;"&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;For the Nine Months Ended September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Estimated&lt;br/&gt; Amortization&lt;br/&gt; Expense&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2020 (remaining three months)&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,964&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2021&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;15,855&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2022&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;15,853&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2023&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;15,749&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2024&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;15,298&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2025 and thereafter&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;147,966&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;214,685&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">3964000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">15855000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">15853000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">15749000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">15298000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">147966000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">214685000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:SupplementalBalanceSheetDisclosuresTextBlock contextRef="P01_01_2020To09_30_2020">
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;7.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Consolidated Balance Sheet Detail &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Inventories, net &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Inventories, net consists of the following: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 72%;"/&gt;
&lt;td style="width: 8%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 8%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;As&#160;of&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;br/&gt; 2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;December&#160;31,&lt;br/&gt; 2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Raw materials&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;42,201&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;29,328&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Work-in-process&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;6,192&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;8,360&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Finished products&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;30,138&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;17,144&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total inventories, net&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;78,531&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;54,832&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Property, Plant and Equipment &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Property, plant and equipment consist of the following: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 73%;"/&gt;
&lt;td style="width: 7%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 6%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;As&#160;of&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;br/&gt; 2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;December&#160;31,&lt;br/&gt; 2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Land&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,023&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,023&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Buildings&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;989&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;764&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Leasehold improvements&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;29,776&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;23,905&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Equipment&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;39,094&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;36,257&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Furniture, fixtures and office equipment&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;8,055&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;6,312&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Computer hardware and software&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14,468&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;8,810&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Construction in progress&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;6,416&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;6,707&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Other&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;348&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;56&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total property, plant and equipment&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;100,169&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;83,834&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Less - Accumulated depreciation&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(44,814&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(35,379&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total property, plant and equipment, net&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;55,355&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;48,455&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Depreciation expense totaled $2.8&#160;million and $1.8&#160;million for the three months ended September&#160;30, 2020 and 2019, respectively. Depreciation expenses totaled $7.8&#160;million and $5.2&#160;million for the nine months ended September&#160;30, 2020 and 2019, respectively. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Accrued Liabilities &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accrued liabilities consist of the following: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 72%;"/&gt;
&lt;td style="width: 8%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 8%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;As&#160;of&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;br/&gt; 2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;December&#160;31,&lt;br/&gt; 2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Employee compensation&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14,652&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;19,850&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Taxes&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;2,759&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,874&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Royalty and license fees&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,000&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;123&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Warranties&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;737&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,500&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Professional fees&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,745&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,081&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Deferred revenue&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;10,141&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;5,005&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Other&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,007&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,898&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total accrued liabilities&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;32,041&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;33,331&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:SupplementalBalanceSheetDisclosuresTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Inventories, net consists of the following: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 72%;"/&gt;
&lt;td style="width: 8%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 8%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;As&#160;of&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;br/&gt; 2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;December&#160;31,&lt;br/&gt; 2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Raw materials&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;42,201&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;29,328&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Work-in-process&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;6,192&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;8,360&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Finished products&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;30,138&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;17,144&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total inventories, net&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;78,531&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;54,832&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">42201000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">29328000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">6192000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">8360000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">30138000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">17144000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryNet
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">78531000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">54832000</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Property, plant and equipment consist of the following: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 73%;"/&gt;
&lt;td style="width: 7%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 6%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;As&#160;of&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;br/&gt; 2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;December&#160;31,&lt;br/&gt; 2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Land&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,023&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,023&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Buildings&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;989&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;764&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Leasehold improvements&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;29,776&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;23,905&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Equipment&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;39,094&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;36,257&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Furniture, fixtures and office equipment&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;8,055&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;6,312&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Computer hardware and software&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14,468&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;8,810&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Construction in progress&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;6,416&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;6,707&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Other&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;348&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;56&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total property, plant and equipment&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;100,169&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;83,834&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Less - Accumulated depreciation&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(44,814&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(35,379&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total property, plant and equipment, net&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;55,355&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;48,455&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:Land
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1023000</us-gaap:Land>
    <us-gaap:Land
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">1023000</us-gaap:Land>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">989000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">764000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:LeaseholdImprovementsGross
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">29776000</us-gaap:LeaseholdImprovementsGross>
    <us-gaap:LeaseholdImprovementsGross
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">23905000</us-gaap:LeaseholdImprovementsGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">39094000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">36257000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:FurnitureAndFixturesGross
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">8055000</us-gaap:FurnitureAndFixturesGross>
    <us-gaap:FurnitureAndFixturesGross
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">6312000</us-gaap:FurnitureAndFixturesGross>
    <us-gaap:CapitalizedComputerSoftwareGross
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">14468000</us-gaap:CapitalizedComputerSoftwareGross>
    <us-gaap:CapitalizedComputerSoftwareGross
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">8810000</us-gaap:CapitalizedComputerSoftwareGross>
    <us-gaap:ConstructionInProgressGross
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">6416000</us-gaap:ConstructionInProgressGross>
    <us-gaap:ConstructionInProgressGross
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">6707000</us-gaap:ConstructionInProgressGross>
    <us-gaap:PropertyPlantAndEquipmentOther
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">348000</us-gaap:PropertyPlantAndEquipmentOther>
    <us-gaap:PropertyPlantAndEquipmentOther
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">56000</us-gaap:PropertyPlantAndEquipmentOther>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">100169000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">83834000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">44814000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">35379000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">55355000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">48455000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Depreciation
      contextRef="P07_01_2020To09_30_2020"
      decimals="-5"
      unitRef="Unit_USD">2800000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="P07_01_2019To09_30_2019"
      decimals="-5"
      unitRef="Unit_USD">1800000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="P01_01_2020To09_30_2020"
      decimals="-5"
      unitRef="Unit_USD">7800000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="P01_01_2019To09_30_2019"
      decimals="-5"
      unitRef="Unit_USD">5200000</us-gaap:Depreciation>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accrued liabilities consist of the following: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 72%;"/&gt;
&lt;td style="width: 8%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 8%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;As&#160;of&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;br/&gt; 2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;December&#160;31,&lt;br/&gt; 2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Employee compensation&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14,652&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;19,850&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Taxes&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;2,759&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,874&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Royalty and license fees&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,000&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;123&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Warranties&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;737&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,500&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Professional fees&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,745&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,081&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Deferred revenue&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;10,141&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;5,005&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Other&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,007&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,898&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total accrued liabilities&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;32,041&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;33,331&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">14652000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">19850000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">2759000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">3874000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedRoyaltiesCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1000000</us-gaap:AccruedRoyaltiesCurrent>
    <us-gaap:AccruedRoyaltiesCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">123000</us-gaap:AccruedRoyaltiesCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">737000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">1500000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:AccruedProfessionalFeesCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1745000</us-gaap:AccruedProfessionalFeesCurrent>
    <us-gaap:AccruedProfessionalFeesCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">1081000</us-gaap:AccruedProfessionalFeesCurrent>
    <us-gaap:DeferredRevenueCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">10141000</us-gaap:DeferredRevenueCurrent>
    <us-gaap:DeferredRevenueCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">5005000</us-gaap:DeferredRevenueCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">1007000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">1898000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">32041000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">33331000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:LongTermDebtTextBlock contextRef="P01_01_2020To09_30_2020">
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;8.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Convertible Senior Notes &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;0.375% Convertible Senior Notes due 2024 &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;On July&#160;19, 2019, the Company issued $287.5&#160;million aggregate principal amount of 0.375% Convertible Senior Notes due 2024 (&#x201c;2019 Notes&#x201d;), which includes the underwriters&#x2019; exercise in full of an option to purchase an additional $37.5&#160;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 $278.5&#160;million. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The 2019 Notes are senior, unsecured obligations of the Company, and bear interest at a rate of 0.375% per year. Interest is payable semi-annually in arrears on January 15 and July 15 of each year, beginning on January 15, 2020. The 2019 Notes will mature on July 15, 2024, unless earlier repurchased or converted in accordance with their terms. The initial conversion rate for the 2019 Notes is 8.6749 shares of the Company&#x2019;s common stock per $1,000 principal amount of 2019 Notes (which is equivalent to an initial conversion price of approximately $115.28 per share). Prior to the close of business on the business day immediately preceding April&#160;15, 2024, the 2019 Notes will be convertible at the option of the holders of 2019 Notes only upon the satisfaction of specified conditions and during certain periods. Thereafter until the close of business on the second scheduled trading day immediately preceding the maturity date, the 2019 Notes will be convertible at the options of the holders of 2019 Notes at any time regardless of these conditions. Conversion of the 2019 Notes will be settled in cash, shares of the Company&#x2019;s common stock or a combination thereof, at the Company&#x2019;s election. The 2019 Notes are not redeemable by the Company prior to maturity. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Holders of 2019 Notes may require the Company to repurchase their 2019 Notes upon the occurrence of a fundamental change prior to maturity at a repurchase price equal to 100% of the principal amount thereof, plus accrued and unpaid interest to, but excluding, the date of repurchase. In connection with certain corporate events, the Company will, under certain circumstances, increase the conversion rate for holders of 2019 Notes who elect to convert their 2019 Notes in connection with such corporate events. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;As of September&#160;30, 2020, the conditions allowing holders of the 2019 Notes to convert have not been met and therefore the 2019 Notes are not yet convertible and are recorded as a long-term liability in the Company&#x2019;s consolidated balance sheet at September&#160;30, 2020. No 2019 Notes were converted by the holders of such notes in the third quarter of 2020. In the event the closing price conditions are met in the fourth quarter of 2020 or a future fiscal quarter, the 2019 Notes will be convertible at a holder&#x2019;s option during the immediately following fiscal quarter. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The Company accounts for the 2019 Notes as separate liability and equity components. We determined the carrying amount of the liability component as the present value of its cash flows using a discount rate of 4.5% based on comparative convertible transactions for similar companies. The proceeds allocated to the debt conversion feature were $52.1&#160;million. This amount was calculated by deducting the carrying value of the liability component from the principal amount of the 2019 Notes as a whole. The difference represents a debt discount that is amortized to interest expense on the Company&#x2019;s consolidated statement of comprehensive income (loss) over the term of the 2019 Notes using the effective interest rate method. The Company will assess the equity classification of the cash conversion feature quarterly, and it is not &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;re-measured&lt;/div&gt; as long as it continues to meet the conditions for equity classification.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company allocates transaction costs related to the issuance of the 2019 Notes to the liability and equity components using the same proportions as the initial carrying value of the 2019 Notes. Transaction costs related to the liability component were $7.4&#160;million and are being amortized to interest expense using the effective interest method over the term of the 2019 Notes. Transaction costs attributable to the equity component were $1.6&#160;million and are netted with the equity component of the 2019 Notes in stockholders&#x2019; equity of the Company&#x2019;s consolidated balance sheet at September&#160;30, 2020. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The net carrying value of the liability component of the 2019 Notes is as follows: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto;border: 0px currentcolor;width: 76%;font-family: 'Times New Roman';font-size: 10pt;border-collapse: collapse;border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 73%;"/&gt;
&lt;td style="width: 6%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;As&#160;of&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;br/&gt; 2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;December&#160;31,&lt;br/&gt; 2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;0.375%&#160;convertible&#160;senior&#160;notes&#160;due&#160;2024:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Principal amount&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;287,500&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;287,500&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Less: unamortized debt discount&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(40,764&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(47,921&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Less: unamortized debt issuance costs&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(5,794&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(6,812&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total debt&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;240,942&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;232,767&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Less: current portion&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Net carrying amount&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;240,942&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;232,767&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: Times New Roman;font-size: 10pt;margin-top: 12pt;margin-bottom: 0pt;margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Interest expense recognized on the 2019 Notes for the three months ended September&#160;30, 2020 was $0.3&#160;million, $2.4&#160;million and $0.3&#160;million for the contractual coupon interest, the accretion of the debt discount and the amortization of the debt issuance costs, respectively. Interest expense recognized on the 2019 Notes for the nine months ended September&#160;30, 2020 was $0.8&#160;million, $7.2&#160;million and $1.0&#160;million for the contractual coupon interest, the accretion of the debt discount and the amortization of the debt issuance costs, respectively. The effective interest rate on the 2019 Notes is 5.1%, which included the interest on the &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2019 Notes, amortization of the debt discount and debt issuance costs. As of September&#160;30, 2020, the carrying value of the 2019 Notes was $240.9&#160;million and the fair value of the principal was $416.0&#160;million.&#160;The fair value of the 2019 Notes was determined based on the most recent trade activity of the 2019 Notes as of September&#160;30, 2020. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Conversion of the 2.125% Convertible Senior Notes due 2021 &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company utilized a portion of the proceeds from the issuance of the 2019 Notes to settle its outstanding 2.125% Convertible Senior Notes due 2021 (the &#x201c;2016 Notes&#x201d;) during the third quarter of 2019. On July&#160;16, 2019, the Company entered into separate privately negotiated agreements with certain holders of the 2016 Notes to exchange an aggregate of $92.0&#160;million principal aggregate amount of the 2016 Notes for shares of the Company&#x2019;s common stock, together with cash, in private placement transactions (the &#x201c;Note Exchanges&#x201d;). On July&#160;19, 2019 and July&#160;22, 2019, the Company used approximately $92.3&#160;million (including $0.3&#160;million of accrued interest) and 1,850,155 shares of its common stock valued at $161.0&#160;million to settle the Note Exchanges for total consideration of $253.3&#160;million, of which $163.6&#160;million was allocated to reacquiring the equity component of the 2016 Notes. The Company allocated the consideration transferred to the liability and equity components using the same proportions as the initial carrying value of the 2016 Notes. The transaction resulted in a loss on extinguishment of debt of $4.6&#160;million in the Company&#x2019;s consolidated statements of comprehensive income (loss) for the three and nine months ended September&#160;30, 2019. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;On July&#160;19, 2019, the Company issued a Notice of Redemption in respect of the 2016 Notes, which provided that, on September&#160;23, 2019, the Company would redeem all 2016 Notes that had not been converted, repurchased or exchanged prior to such date at a redemption price in cash equal to 100% of the principal amount thereof plus accrued and unpaid interest. On September&#160;23, 2019, the Company used $23.0&#160;million and 466,045 shares of its common stock valued at $37.8&#160;million to settle the remaining 2016 Notes for a total of $60.8&#160;million, of which $38.3&#160;million was allocated to reacquiring the equity component of the 2016 Notes. This transaction resulted in a loss on extinguishment of debt of $1.1&#160;million recorded on the Company&#x2019;s consolidated statements of comprehensive income (loss). The total loss for the three and nine months ended September&#160;30, 2019 of $5.7&#160;million represents the difference between the fair value of the liability component of the 2016 Notes and its related carrying value immediately before the exchange. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The fair value of the liability component was calculated using a discounted cash flow technique with an effective interest rate of 3.9%, representing the estimated nonconvertible debt borrowing rate with a maturity as of the measurement date consistent with the 2016 Notes maturity date of June 1, 2021. In addition, in accordance with this guidance, a portion of the fair value of the consideration transferred is allocated to the reacquisition of the equity component, which is the difference between the fair value of the consideration transferred and the fair value of the liability component immediately before the exchange. As a result, on a gross basis, $200.1&#160;million was allocated to the reacquisition of the equity component of the original instrument, which is recorded net of deferred taxes within additional &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;paid-in&lt;/div&gt; capital on the Company&#x2019;s consolidated balance sheet.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The cash conversion feature of the 2016 Notes required bifurcation from the 2016 Notes and was initially accounted for as an equity instrument classified to stockholders&#x2019; equity, as the conversion feature was determined to be clearly and closely related to the Company&#x2019;s stock. Based on market data available for publicly traded, senior, unsecured corporate bonds issued by companies in the same industry and asset base and with similar maturity, the Company estimated the implied interest rate, assuming no conversion option. Assumptions used in the estimate represent what market participants would use in pricing the liability component, including market interest rates, credit standing, and yield curves, all of which are defined as Level&#160;2 observable inputs. The estimated implied interest rate was applied to the 2016 Notes, which resulted in a fair value of the liability component of $96.3&#160;million upon issuance, calculated as the present value of implied future payments based on the $115.0&#160;million aggregate principal amount. The equity component of the 2016 Notes was recognized as a debt discount, recorded in additional &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;paid-in&lt;/div&gt; capital, and represents the difference between the aggregate principal of the 2016 Notes and the fair value of the 2016 Notes without conversion option on their issuance date.&#160;The debt discount was amortized to interest expense using the effective interest method over five years, or the life of the 2016 Notes.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Interest expense recognized on the 2016 Notes for the three months ended September&#160;30, 2019 was $0.1&#160;million, $0.5&#160;million and $0.1&#160;million for the contractual coupon interest, the accretion of the debt discount and the amortization of the debt issuance costs, respectively. Interest expense recognized on the 2016 Notes for the nine months ended September&#160;30, 2019 was&#160;$1.3&#160;million, $2.4&#160;million and&#160;$0.4 million&#160;for the contractual coupon interest, the accretion of the debt discount and the amortization of the debt issuance costs, respectively. The effective interest rate on the 2016 Notes was 6.6%, which included the interest on the 2016 Notes, amortization of the debt discount and debt issuance costs. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; </us-gaap:LongTermDebtTextBlock>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="PAsOn07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_USD">287500000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="PAsOn07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_pure">0.00375</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <rgen:OptionToPurchaseAdditionalDebtFaceAmount
      contextRef="PAsOn07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">37500000</rgen:OptionToPurchaseAdditionalDebtFaceAmount>
    <us-gaap:ProceedsFromConvertibleDebt
      contextRef="P07_19_2019To07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">278500000</us-gaap:ProceedsFromConvertibleDebt>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="PAsOn07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_pure">0.00375</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateTerms contextRef="P07_19_2019To07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">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="P07_19_2019To07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis">2024-07-15</us-gaap:DebtInstrumentMaturityDate>
    <us-gaap:DebtInstrumentConvertibleConversionRatio1
      contextRef="P07_19_2019To07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_pure">8.6749</us-gaap:DebtInstrumentConvertibleConversionRatio1>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="PAsOn07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_USD_per_Share">115.28</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:DebtInstrumentRedemptionPricePercentage
      contextRef="P07_19_2019To07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_pure">1</us-gaap:DebtInstrumentRedemptionPricePercentage>
    <rgen:DiscountRate
      contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_pure">0.045</rgen:DiscountRate>
    <us-gaap:DebtInstrumentConvertibleBeneficialConversionFeature
      contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">52100000</us-gaap:DebtInstrumentConvertibleBeneficialConversionFeature>
    <rgen:ConvertibleNotesTransactionCostsOfLiabilityComponent
      contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">7400000</rgen:ConvertibleNotesTransactionCostsOfLiabilityComponent>
    <rgen:ConvertibleNotesTransactionCostsOfEquityComponent
      contextRef="PAsOn09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">1600000</rgen:ConvertibleNotesTransactionCostsOfEquityComponent>
    <us-gaap:ConvertibleDebtTableTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The net carrying value of the liability component of the 2019 Notes is as follows: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto;border: 0px currentcolor;width: 76%;font-family: 'Times New Roman';font-size: 10pt;border-collapse: collapse;border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 73%;"/&gt;
&lt;td style="width: 6%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;As&#160;of&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;br/&gt; 2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;December&#160;31,&lt;br/&gt; 2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;0.375%&#160;convertible&#160;senior&#160;notes&#160;due&#160;2024:&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Principal amount&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;287,500&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;287,500&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Less: unamortized debt discount&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(40,764&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(47,921&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Less: unamortized debt issuance costs&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(5,794&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(6,812&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total debt&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;240,942&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;232,767&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Less: current portion&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Net carrying amount&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;240,942&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;232,767&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ConvertibleDebtTableTextBlock>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">287500000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">287500000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">40764000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">47921000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">5794000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:DeferredFinanceCostsNet
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">6812000</us-gaap:DeferredFinanceCostsNet>
    <us-gaap:ConvertibleNotesPayable
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">240942000</us-gaap:ConvertibleNotesPayable>
    <us-gaap:ConvertibleNotesPayable
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">232767000</us-gaap:ConvertibleNotesPayable>
    <us-gaap:ConvertibleLongTermNotesPayable
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">240942000</us-gaap:ConvertibleLongTermNotesPayable>
    <us-gaap:ConvertibleLongTermNotesPayable
      contextRef="PAsOn12_31_2019"
      decimals="-3"
      unitRef="Unit_USD">232767000</us-gaap:ConvertibleLongTermNotesPayable>
    <us-gaap:InterestExpenseDebtExcludingAmortization
      contextRef="P07_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">300000</us-gaap:InterestExpenseDebtExcludingAmortization>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="P07_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">2400000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="P07_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">300000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:InterestExpenseDebtExcludingAmortization
      contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">800000</us-gaap:InterestExpenseDebtExcludingAmortization>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">7200000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="P01_01_2020To09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">1000000.0</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="PAsOn09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_pure">0.051</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:LongTermDebt
      contextRef="PAsOn09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">240900000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebtFairValue
      contextRef="PAsOn09_30_2020_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">416000000.0</us-gaap:LongTermDebtFairValue>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="PAsOn07_16_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_pure">0.02125</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="PAsOn07_16_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_USD">92000000.0</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:EarlyRepaymentOfSeniorDebt
      contextRef="P07_19_2019To07_19_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">92300000</us-gaap:EarlyRepaymentOfSeniorDebt>
    <us-gaap:DebtInstrumentIncreaseAccruedInterest
      contextRef="P07_19_2019To07_19_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">300000</us-gaap:DebtInstrumentIncreaseAccruedInterest>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="P07_22_2019To07_22_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_shares">1850155</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="P07_22_2019To07_22_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">161000000.0</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:DebtConversionConvertedInstrumentAmount1
      contextRef="P07_22_2019To07_22_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">253300000</us-gaap:DebtConversionConvertedInstrumentAmount1>
    <us-gaap:DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent
      contextRef="PAsOn07_22_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">163600000</us-gaap:DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="P01_01_2020To09_30_2020_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">4600000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:DebtInstrumentRedemptionPricePercentage
      contextRef="P09_01_2019To09_23_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_pure">1</us-gaap:DebtInstrumentRedemptionPricePercentage>
    <us-gaap:EarlyRepaymentOfSeniorDebt
      contextRef="P09_01_2019To09_23_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">23000000.0</us-gaap:EarlyRepaymentOfSeniorDebt>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="P09_01_2019To09_23_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_shares">466045</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="P09_01_2019To09_23_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">37800000</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <rgen:DebtInstrumentFaceAmountRemaining
      contextRef="PAsOn09_23_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">60800000</rgen:DebtInstrumentFaceAmountRemaining>
    <us-gaap:DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent
      contextRef="PAsOn09_23_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">38300000</us-gaap:DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="P09_01_2019To09_23_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">1100000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="P01_01_2020To09_30_2020"
      decimals="-5"
      unitRef="Unit_USD">5700000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="PAsOn09_30_2020_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_pure">0.039</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:DebtInstrumentMaturityDate contextRef="P07_19_2019To07_19_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis">2021-06-01</us-gaap:DebtInstrumentMaturityDate>
    <us-gaap:DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent
      contextRef="PAsOn09_30_2020_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">200100000</us-gaap:DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent>
    <us-gaap:DebtInstrumentFairValue
      contextRef="PAsOn09_30_2020_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">96300000</us-gaap:DebtInstrumentFairValue>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="PAsOn09_30_2020_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_USD">115000000.0</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:InterestExpenseDebtExcludingAmortization
      contextRef="P07_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">100000</us-gaap:InterestExpenseDebtExcludingAmortization>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="P07_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">500000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="P07_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">100000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:InterestExpenseDebtExcludingAmortization
      contextRef="P01_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">1300000</us-gaap:InterestExpenseDebtExcludingAmortization>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="P01_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">2400000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="P01_01_2019To09_30_2019_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">400000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="PAsOn09_30_2020_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_pure">0.066</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock contextRef="P01_01_2020To09_30_2020">
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;9.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Stockholders&#x2019; Equity &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Public Offerings of Common Stock &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;On July&#160;19, 2019, the Company completed a public offering in which 1,587,000 shares of its common stock, including the underwriters&#x2019; exercise in full of an option to purchase an additional 207,000 shares, were sold to the public at a price of $87.00 per share (the &#x201c;Stock Offering&#x201d;). The net proceeds of the Stock Offering, after deducting underwriting discounts and commissions and other estimated offering expenses payable by the Company, were approximately $131.1&#160;million. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;On May&#160;3, 2019, the Company completed a public offering in which 3,144,531 shares of its common stock, which includes the underwriters&#x2019; exercise in full of an option to purchase up to an additional 410,156 shares, were sold to the public at a price of $64.00 per share. The total proceeds received by the Company from this offering, net of underwriting discounts and commissions and other estimated offering expenses payable by the Company, totaled approximately $189.6&#160;million. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Stock Option and Incentive Plans &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;At the Company&#x2019;s 2018 annual meeting of shareholders held on May&#160;16, 2018, the Company&#x2019;s shareholders approved the 2018 Stock Option and Incentive Plan (the &#x201c;2018 Plan&#x201d;). Under the 2018 Plan the number of shares of the Company&#x2019;s common stock that are reserved and available for issuance is 2,778,000 plus the number of shares of common stock available for issuance under the Company&#x2019;s Amended and Restated 2012 Stock Option and Incentive Plan (the &#x201c;2012 Plan&#x201d;). The shares of common stock underlying any awards under the 2018 Plan and 2012 Plan (together, the &#x201c;Plans&#x201d;) that are forfeited, canceled or otherwise terminated (other than by exercise) shall be added back to the shares of stock available for issuance under the 2018 Plan. At September&#160;30, 2020, 2,325,314 shares were available for future grant under the 2018 Plan. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Stock-Based Compensation &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;For the three months ended September&#160;30, 2020 and 2019, th&lt;div style="display:inline;"&gt;e&lt;/div&gt;&#160;Company recorded stock-based compensation expense of $4.2&#160;million and $3.2&#160;million, respectively, for share-based awards granted under the Plans. For the nine months ended September&#160;30, 2020 and 2019, the Company recorded stock-based compensation expense of $12.5&#160;million and $9.5&#160;million, respectively. The following table presents stock-based compensation expense in the Company&#x2019;s consolidated statements of comprehensive income (loss): &lt;/div&gt;&lt;/div&gt;  &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 71%;"/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Three&#160;Months&#160;Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Nine Months Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Cost of product revenue&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;563&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;375&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,421&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;992&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Research and development&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;326&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;351&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,092&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;992&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Selling, general and administrative&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,336&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;2,449&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;9,979&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;7,475&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total stock-based compensation&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;4,225&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,175&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;12,492&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;9,459&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The 2018 Plan allows for the granting of incentive and nonqualified options to purchase shares of common stock, restricted stock and other equity awards. Employee grants under the Plans generally vest over a &lt;span style="-sec-ix-hidden:hidden15372903"&gt;thre&lt;/span&gt;e to &lt;span style="-sec-ix-hidden:hidden15372906"&gt;five-year&lt;/span&gt; period, with &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;20%-33%&lt;/div&gt; vesting on the first anniversary of the date of grant and the remainder vesting in equal yearly installments thereafter. Nonqualified options issued to &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-employee&lt;/div&gt; directors&#160;under the Plans generally vest over one year. In the first quarter of 2018, to create a longer-term retention incentive, the Company&#x2019;s Compensation Committee granted long-term incentive compensation awards to its Chief Executive Officer consisting of both stock options and restricted stock units (&#x201c;RSUs&#x201d;) that are subject to time-based vesting over nine years. Options granted under the Plans have a maximum term of ten years from the date of grant and generally, the exercise price of the stock options equals the fair market value of the Company&#x2019;s common stock on the date of grant. At September&#160;30, 2020, options to purchase 723,914 shares and 675,567 stock units were outstanding under the Plans.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company uses the Black-Scholes option pricing model to calculate the fair value of stock option awards on the grant date, and the Company uses the value of the common stock as of the grant date to value RSUs. The Company measures stock-based compensation cost at the grant date based on the estimated fair value of the award. 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 issues performance stock units to certain employees that are tied to company and/or individual performance metrics and recognizes expense on performance-based awards over the vesting period based on the probability that the performance metrics will be achieved. The Company recognizes stock-based compensation expense for options that are ultimately expected to vest, and accordingly, such compensation expense has been adjusted for estimated forfeitures. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt; &lt;/div&gt;&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Information regarding option activity for the nine months ended September&#160;30, 2020 under the Plans is summarized below: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 61%; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 4%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Shares&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;average&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;exercise&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;price&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted-&lt;br/&gt; Average&lt;br/&gt; Remaining&lt;br/&gt; Contractual&lt;br/&gt; Term&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(in&#160;Years)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Aggregate&lt;br/&gt; Intrinsic&#160;Value&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(in&#160;Thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Options outstanding at December&#160;31, 2019&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;957,559&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;30.81&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Granted&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;69,698&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;104.61&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Exercised&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(303,343&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;23.37&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Forfeited/expired/cancelled&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Options outstanding at September&#160;30, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;723,914&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;41.03&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;7.02&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;77,102&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Options exercisable at September&#160;30, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;339,191&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;31.00&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;6.05&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;39,528&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Vested and expected to vest at September&#160;30, 2020&lt;div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"&gt;(1)&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;693,689&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;6.98&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;74,178&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px; table-layout: fixed;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 9%;"&gt;&#160;&lt;/td&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;(1)&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;Represents the number of vested options as of September&#160;30, 2020 plus the number of unvested options expected to vest as of September&#160;30, 2020 based on the unvested outstanding options at September&#160;30, 2020 adjusted for estimated forfeiture rates of 8% for awards granted to &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-executive&lt;/div&gt; level employees and 3% for awards granted to executive level employees.&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The aggregate intrinsic value in the table above represents the total &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;pre-tax&lt;/div&gt; intrinsic value (the difference between the closing price of the common stock on September&#160;30, 2020, the last business day of the third quarter of 2020, of $147.54 per share and the exercise price of each &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;in-the-money&lt;/div&gt;&lt;/div&gt; option) that would have been received by the option holders had all option holders exercised their options on September&#160;30, 2020. The aggregate intrinsic value of stock options exercised during the nine months ended September&#160;30, 2020 and 2019 was $30.7&#160;million and $5.2&#160;million, respectively.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The weighted average grant date fair value of options granted during the nine months ended September&#160;30, 2020 and 2019 was $48.13 and $30.07, respectively. The total fair value of stock options that vested during the nine months ended September&#160;30, 2020 and 2019 was $2.6&#160;million and $2.9&#160;million, respectively. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&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. Information regarding stock unit activity, which includes activity for restricted stock units and performance stock units, for the nine months ended September&#160;30, 2020 under the Plans is summarized below: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 65%; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 6%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 6%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Shares&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted-&lt;br/&gt; Average&lt;br/&gt; Remaining&lt;br/&gt; Contractual&lt;br/&gt; Term&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(in Years)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Aggregate&lt;br/&gt; Intrinsic Value&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(in&#160;Thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Unvested at December&#160;31, 2019&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;734,984&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Awarded&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;187,942&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Vested&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(225,204&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Forfeited/expired/cancelled&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(22,155&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Unvested at September&#160;30, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;675,567&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3.39&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;99,673&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Vested and expected to vest at September&#160;30, 2020&lt;div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"&gt;(1)&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;650,436&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3.20&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;95,965&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px; table-layout: fixed;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%;"&gt;&#160;&lt;/td&gt;
&lt;td style="width: 5%;vertical-align: top;;text-align:left;"&gt;(1)&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;Represents the number of vested stock units as of September&#160;30, 2020 plus the number of unvested stock units expected to vest as of September&#160;30, 2020 based on the unvested outstanding stock units at September&#160;30, 2020 adjusted for estimated forfeiture rates of 8% for awards granted to &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-executive&lt;/div&gt; level employees and 3% for awards granted to executive level employees.&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The aggregate intrinsic value in the table above represents the total &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;pre-tax&lt;/div&gt; intrinsic value (equal to the closing price of the common stock on September&#160;30, 2020, the last business day of the third quarter of 2020, of $147.54 per share, as stock units do not have an exercise price) that would have been received by the stock unit holders had all holders exercised on September&#160;30, 2020. The aggregate intrinsic value of stock units vested during the nine months ended September&#160;30, 2020 and 2019 was $25.0&#160;million and $15.5&#160;million, respectively.&lt;/div&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The weighted average grant date fair value of stock units vested during the nine months ended September&#160;30, 2020 and 2019 was $66.00 and $33.46, respectively. The total fair value of stock units that vested during the nine months ended September&#160;30, 2020 and 2019 was $9.8&#160;million and $7.6&#160;million, respectively. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;As of September&#160;30, 2020, there was $47.0&#160;million of total unrecognized compensation cost related to unvested share-based awards.&#160;This cost is expected to be recognized over a weighted average remaining requisite service period of 3.61 years. The Company expects 1,833,239 unvested options and stock units to vest over the next five years. &lt;/div&gt;&lt;/div&gt; </us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:CommonStockSharesIssued
      contextRef="PAsOn07_19_2019"
      decimals="INF"
      unitRef="Unit_shares">1587000</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="P07_19_2019To07_19_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_UnderwriterMembersrtTitleOfIndividualAxis"
      decimals="INF"
      unitRef="Unit_shares">207000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <rgen:CommonStockIssuePricePerShare
      contextRef="PAsOn07_19_2019"
      decimals="2"
      unitRef="Unit_USD_per_Share">87.00</rgen:CommonStockIssuePricePerShare>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="P07_19_2019To07_19_2019"
      decimals="-5"
      unitRef="Unit_USD">131100000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:CommonStockSharesIssued
      contextRef="PAsOn05_03_2019"
      decimals="INF"
      unitRef="Unit_shares">3144531</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="P05_03_2019To05_03_2019_CommonStockMemberusgaapStatementEquityComponentsAxis_UnderwriterMembersrtTitleOfIndividualAxis"
      decimals="INF"
      unitRef="Unit_shares">410156</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <rgen:CommonStockIssuePricePerShare
      contextRef="PAsOn05_03_2019"
      decimals="2"
      unitRef="Unit_USD_per_Share">64.00</rgen:CommonStockIssuePricePerShare>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="P05_03_2019To05_03_2019"
      decimals="-5"
      unitRef="Unit_USD">189600000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="PAsOn12_31_2018_StockOptionAndIncentivePlanMemberusgaapPlanNameAxis"
      decimals="INF"
      unitRef="Unit_shares">2778000</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="PAsOn09_30_2020_StockOptionAndIncentivePlanMemberusgaapPlanNameAxis"
      decimals="INF"
      unitRef="Unit_shares">2325314</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensation
      contextRef="P07_01_2020To09_30_2020"
      decimals="-5"
      unitRef="Unit_USD">4200000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P07_01_2019To09_30_2019"
      decimals="-5"
      unitRef="Unit_USD">3200000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P01_01_2020To09_30_2020"
      decimals="-5"
      unitRef="Unit_USD">12500000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P01_01_2019To09_30_2019"
      decimals="-5"
      unitRef="Unit_USD">9500000</us-gaap:ShareBasedCompensation>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock contextRef="P01_01_2020To09_30_2020">The following table presents stock-based compensation expense in the Company&#x2019;s consolidated statements of comprehensive income (loss): &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 71%;"/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Three&#160;Months&#160;Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Nine Months Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Cost of product revenue&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;563&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;375&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,421&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;992&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Research and development&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;326&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;351&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,092&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;992&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Selling, general and administrative&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,336&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;2,449&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;9,979&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;7,475&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total stock-based compensation&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;4,225&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3,175&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;12,492&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;9,459&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:ShareBasedCompensation
      contextRef="P07_01_2020To09_30_2020_CostOfSalesMemberusgaapIncomeStatementLocationAxis"
      decimals="-3"
      unitRef="Unit_USD">563000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P07_01_2019To09_30_2019_CostOfSalesMemberusgaapIncomeStatementLocationAxis"
      decimals="-3"
      unitRef="Unit_USD">375000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P01_01_2020To09_30_2020_CostOfSalesMemberusgaapIncomeStatementLocationAxis"
      decimals="-3"
      unitRef="Unit_USD">1421000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P01_01_2019To09_30_2019_CostOfSalesMemberusgaapIncomeStatementLocationAxis"
      decimals="-3"
      unitRef="Unit_USD">992000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P07_01_2020To09_30_2020_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis"
      decimals="-3"
      unitRef="Unit_USD">326000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P07_01_2019To09_30_2019_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis"
      decimals="-3"
      unitRef="Unit_USD">351000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P01_01_2020To09_30_2020_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis"
      decimals="-3"
      unitRef="Unit_USD">1092000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P01_01_2019To09_30_2019_ResearchAndDevelopmentExpenseMemberusgaapIncomeStatementLocationAxis"
      decimals="-3"
      unitRef="Unit_USD">992000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P07_01_2020To09_30_2020_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis"
      decimals="-3"
      unitRef="Unit_USD">3336000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P07_01_2019To09_30_2019_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis"
      decimals="-3"
      unitRef="Unit_USD">2449000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P01_01_2020To09_30_2020_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis"
      decimals="-3"
      unitRef="Unit_USD">9979000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P01_01_2019To09_30_2019_SellingGeneralAndAdministrativeExpensesMemberusgaapIncomeStatementLocationAxis"
      decimals="-3"
      unitRef="Unit_USD">7475000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">4225000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">3175000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">12492000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">9459000</us-gaap:ShareBasedCompensation>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MinimumMembersrtRangeAxis_ShareBasedCompensationAwardTrancheOneMemberusgaapVestingAxis"
      decimals="INF"
      unitRef="Unit_pure">0.20</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="P01_01_2020To09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_MaximumMembersrtRangeAxis_ShareBasedCompensationAwardTrancheOneMemberusgaapVestingAxis"
      decimals="INF"
      unitRef="Unit_pure">0.33</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="P01_01_2020To09_30_2020_NonEmployeeDirectorStockOptionMemberusgaapAwardTypeAxis">P9Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod contextRef="P01_01_2020To09_30_2020">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">723914</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="PAsOn09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">675567</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Information regarding option activity for the nine months ended September&#160;30, 2020 under the Plans is summarized below: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 61%; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 4%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Shares&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;average&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;exercise&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;price&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted-&lt;br/&gt; Average&lt;br/&gt; Remaining&lt;br/&gt; Contractual&lt;br/&gt; Term&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(in&#160;Years)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Aggregate&lt;br/&gt; Intrinsic&#160;Value&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(in&#160;Thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Options outstanding at December&#160;31, 2019&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;957,559&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;30.81&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Granted&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;69,698&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;104.61&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Exercised&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(303,343&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;23.37&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Forfeited/expired/cancelled&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Options outstanding at September&#160;30, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;723,914&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;41.03&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;7.02&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;77,102&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Options exercisable at September&#160;30, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;339,191&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;31.00&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;6.05&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;39,528&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Vested and expected to vest at September&#160;30, 2020&lt;div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"&gt;(1)&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;693,689&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;6.98&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;74,178&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px; table-layout: fixed;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 9%;"&gt;&#160;&lt;/td&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;(1)&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;Represents the number of vested options as of September&#160;30, 2020 plus the number of unvested options expected to vest as of September&#160;30, 2020 based on the unvested outstanding options at September&#160;30, 2020 adjusted for estimated forfeiture rates of 8% for awards granted to &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-executive&lt;/div&gt; level employees and 3% for awards granted to executive level employees.&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="PAsOn12_31_2019"
      decimals="INF"
      unitRef="Unit_shares">957559</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="PAsOn12_31_2019"
      decimals="2"
      unitRef="Unit_USD_per_Share">30.81</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
      contextRef="P01_01_2020To09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">69698</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="P01_01_2020To09_30_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">104.61</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="P01_01_2020To09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">303343</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="P01_01_2020To09_30_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">23.37</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">723914</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="PAsOn09_30_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">41.03</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="P01_01_2020To09_30_2020">P7Y7D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">77102000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">339191</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="PAsOn09_30_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">31.00</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 contextRef="P01_01_2020To09_30_2020">P6Y18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">39528000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      id="Fact_15357651"
      unitRef="Unit_shares">693689</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1 contextRef="P01_01_2020To09_30_2020" id="Fact_15357652">P6Y11M23D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue
      contextRef="PAsOn09_30_2020"
      decimals="-3"
      id="Fact_15357653"
      unitRef="Unit_USD">74178000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <rgen:PercentageOfSharesSubjectToForfeiture
      contextRef="PAsOn09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_NonExecutiveMembersrtTitleOfIndividualAxis"
      decimals="2"
      unitRef="Unit_pure">0.08</rgen:PercentageOfSharesSubjectToForfeiture>
    <rgen:PercentageOfSharesSubjectToForfeiture
      contextRef="PAsOn09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_ExecutiveOfficerMembersrtTitleOfIndividualAxis"
      decimals="2"
      unitRef="Unit_pure">0.03</rgen:PercentageOfSharesSubjectToForfeiture>
    <us-gaap:SharePrice
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      unitRef="Unit_USD_per_Share">147.54</us-gaap:SharePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="P01_01_2020To09_30_2020"
      decimals="-5"
      unitRef="Unit_USD">30700000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="P01_01_2019To09_30_2019"
      decimals="-5"
      unitRef="Unit_USD">5200000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="P01_01_2020To09_30_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">48.13</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="P01_01_2019To09_30_2019"
      decimals="2"
      unitRef="Unit_USD_per_Share">30.07</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1
      contextRef="P01_01_2020To09_30_2020"
      decimals="-5"
      unitRef="Unit_USD">2600000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1
      contextRef="P01_01_2019To09_30_2019"
      decimals="-5"
      unitRef="Unit_USD">2900000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1>
    <us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&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. Information regarding stock unit activity, which includes activity for restricted stock units and performance stock units, for the nine months ended September&#160;30, 2020 under the Plans is summarized below: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 65%; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 6%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 5%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="width: 6%; vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;;"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Shares&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Weighted-&lt;br/&gt; Average&lt;br/&gt; Remaining&lt;br/&gt; Contractual&lt;br/&gt; Term&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(in Years)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Aggregate&lt;br/&gt; Intrinsic Value&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(in&#160;Thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Unvested at December&#160;31, 2019&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;734,984&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Awarded&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;187,942&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Vested&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(225,204&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Forfeited/expired/cancelled&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(22,155&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Unvested at September&#160;30, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;675,567&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3.39&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;99,673&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Vested and expected to vest at September&#160;30, 2020&lt;div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"&gt;(1)&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;650,436&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;3.20&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;95,965&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px; table-layout: fixed;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%;"&gt;&#160;&lt;/td&gt;
&lt;td style="width: 5%;vertical-align: top;;text-align:left;"&gt;(1)&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;Represents the number of vested stock units as of September&#160;30, 2020 plus the number of unvested stock units expected to vest as of September&#160;30, 2020 based on the unvested outstanding stock units at September&#160;30, 2020 adjusted for estimated forfeiture rates of 8% for awards granted to &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;non-executive&lt;/div&gt; level employees and 3% for awards granted to executive level employees.&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="PAsOn12_31_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">734984</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">187942</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">225204</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">22155</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="PAsOn09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">675567</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis">P3Y4M20D</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding
      contextRef="PAsOn09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="-3"
      unitRef="Unit_USD">99673000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding>
    <rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber
      contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="INF"
      id="Fact_15357669"
      unitRef="Unit_shares">650436</rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber>
    <rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm
      contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      id="Fact_15357663">P3Y2M12D</rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm>
    <rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue
      contextRef="PAsOn09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="-3"
      id="Fact_15357671"
      unitRef="Unit_USD">95965000</rgen:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <rgen:PercentageOfSharesSubjectToForfeiture
      contextRef="PAsOn09_30_2020_NonExecutiveMembersrtTitleOfIndividualAxis_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_pure">0.08</rgen:PercentageOfSharesSubjectToForfeiture>
    <rgen:PercentageOfSharesSubjectToForfeiture
      contextRef="PAsOn09_30_2020_ExecutiveOfficerMembersrtTitleOfIndividualAxis_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_pure">0.03</rgen:PercentageOfSharesSubjectToForfeiture>
    <us-gaap:SharePrice
      contextRef="PAsOn09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_USD_per_Share">147.54</us-gaap:SharePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested
      contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="-5"
      unitRef="Unit_USD">25000000.0</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested
      contextRef="P01_01_2019To09_30_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="-5"
      unitRef="Unit_USD">15500000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">66.00</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="P01_01_2019To09_30_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="2"
      unitRef="Unit_USD_per_Share">33.46</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="-5"
      unitRef="Unit_USD">9800000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="P01_01_2019To09_30_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="-5"
      unitRef="Unit_USD">7600000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="PAsOn09_30_2020"
      decimals="-5"
      unitRef="Unit_USD">47000000.0</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 contextRef="P01_01_2020To09_30_2020">P3Y7M9D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <rgen:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">1833239</rgen:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="P01_01_2020To09_30_2020_UnvestedOptionsMemberusgaapAwardTypeAxis">P5Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="P01_01_2020To09_30_2020">
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;10.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Commitments and Contingencies &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Licensing and Research Agreements &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&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 which 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&#160;30, 2020 and 2019. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In June 2018, the Company secured an agreement with Navigo&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;Proteins&lt;/div&gt;&#160;for the exclusive &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;co-development&lt;/div&gt; of multiple affinity ligands for which Repligen holds commercialization rights. The Company is manufacturing and has agreed to supply the first of these ligands, &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;NGL-Impact&lt;/div&gt;&lt;div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px"&gt;&#xae;&lt;/div&gt;, exclusively to Purolite Life Sciences (&#x201c;Purolite&#x201d;), who will pair 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 &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;NGL-Impact&lt;/div&gt; and other potential additional affinity ligands that may advance from the Company&#x2019;s Navigo collaboration.&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;In September 2020, Repligen and Navigo Proteins successfully completed co-development of an affinity ligand targeting the SARS-CoV-2 spike protein, to be utilized in the purification of COVID-19 vaccines. The Company has proceeded with scaling up and manufacturing&#160;this ligand&#160;and the development and validation of the related affinity chromatography resin, which will be marketed by Repligen.&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;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 $0.2&#160;million and $0.4&#160;million during the three and nine months ended September&#160;30, 2020&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;, respectively&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:LongTermPurchaseCommitmentAmount
      contextRef="P07_01_2020To09_30_2020_NGLImpactAMembersrtProductOrServiceAxis_ResearchAndDevelopmentArrangementMemberusgaapLongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis"
      decimals="-5"
      unitRef="Unit_USD">200000</us-gaap:LongTermPurchaseCommitmentAmount>
    <us-gaap:LongTermPurchaseCommitmentAmount
      contextRef="P01_01_2020To09_30_2020_NGLImpactAMembersrtProductOrServiceAxis_ResearchAndDevelopmentArrangementMemberusgaapLongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis"
      decimals="-5"
      unitRef="Unit_USD">400000</us-gaap:LongTermPurchaseCommitmentAmount>
    <us-gaap:ComprehensiveIncomeNoteTextBlock contextRef="P01_01_2020To09_30_2020">
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;11.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Accumulated Other Comprehensive Loss &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The following shows the changes in the components of accumulated other comprehensive loss for the nine months ended September&#160;30, 2020 which consisted of only foreign currency translation adjustments for the periods shown (amounts in thousands): &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 86%;"/&gt;
&lt;td style="width: 6%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Foreign&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Currency&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Translation&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Adjustment&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance as of December&#160;31, 2019&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(15,027&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Other comprehensive income&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;5,304&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance as of September&#160;30, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(9,723&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ComprehensiveIncomeNoteTextBlock>
    <us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The following shows the changes in the components of accumulated other comprehensive loss for the nine months ended September&#160;30, 2020 which consisted of only foreign currency translation adjustments for the periods shown (amounts in thousands): &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 86%;"/&gt;
&lt;td style="width: 6%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Foreign&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Currency&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Translation&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Adjustment&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance as of December&#160;31, 2019&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(15,027&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Other comprehensive income&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;5,304&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Balance as of September&#160;30, 2020&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;(9,723&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;)&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn12_31_2019_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-15027000</us-gaap:StockholdersEquity>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="P01_01_2020To09_30_2020_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">5304000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:StockholdersEquity
      contextRef="PAsOn09_30_2020_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis"
      decimals="-3"
      unitRef="Unit_USD">-9723000</us-gaap:StockholdersEquity>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="P01_01_2020To09_30_2020">
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;12.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Income Taxes &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company&#x2019;s effective tax rate for the three and nine months ended&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;September&lt;/div&gt;&#160;30, 2020 was 18.0% and 9.5%, compared to 0.7% and 18.3% for the corresponding periods in the prior year. The effective tax rates for the three and nine months ended &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;September&lt;/div&gt;&#160;30, 2020 and 2019 were lower than the U.S. statutory rate of 21% primarily due to windfall benefits on stock option exercises and the vesting of stock units. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The Company is subject to a territorial tax system under the Tax Cuts and Jobs Act (&#x201c;TCJA&#x201d;) enacted in December 2017, in which the Company is required to provide for tax on Global Intangible &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Low-Taxed&lt;/div&gt; Income (&#x201c;GILTI&#x201d;) earned by certain foreign subsidiaries. The Company has adopted an accounting policy to provide for the tax expense related to GILTI in the year the tax is incurred as a period expense.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;On March&#160;27, 2020, President Trump signed the $2.2 trillion bipartisan Coronavirus Aid, Relief, and Economic Security (&#x201c;CARES&#x201d;) Act. The CARES Act, the third congressional bill to address &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;COVID-19,&lt;/div&gt; provides for loans and other benefits to businesses, expanded unemployment insurance, direct payments to those with middle-income and below wages, new appropriations funding for healthcare and other priorities, and tax changes, including deferrals of employer payroll tax&lt;/div&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;liabilities, coupled with an employee retention tax credit and rollbacks of TCJA limitations on net operating losses (&#x201c;NOLs&#x201d;) and the Section&#160;163(j) business interest limitation and a TCJA technical correction on qualified improvement property. The Company evaluated the provisions of the CARES Act and no provision had a material effect on the Company&#x2019;s financial position or results of operations at September&#160;30, 2020 and the three and nine months then ended.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company&#x2019;s tax returns are subject to examination by federal, state and international tax authorities for the following periods: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 85%; font-family: 'Times New Roman';"/&gt;
&lt;td style="width: 4%; vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.5pt;"&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Jurisdiction&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Fiscal Years&lt;br/&gt; Subject to&lt;br/&gt; Examination&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;United States - federal and state&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2016-2019&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Sweden&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;2013-2019&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Germany&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:center;"&gt;2019&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Netherlands&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;2013-2019&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="P07_01_2020To09_30_2020"
      decimals="3"
      unitRef="Unit_pure">0.180</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="P01_01_2020To09_30_2020"
      decimals="3"
      unitRef="Unit_pure">0.095</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="P07_01_2019To09_30_2019"
      decimals="3"
      unitRef="Unit_pure">0.007</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="P01_01_2019To09_30_2019"
      decimals="3"
      unitRef="Unit_pure">0.183</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="P07_01_2019To09_30_2019"
      decimals="INF"
      unitRef="Unit_pure">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="P01_01_2020To09_30_2020"
      decimals="INF"
      unitRef="Unit_pure">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="P01_01_2019To09_30_2019"
      decimals="INF"
      unitRef="Unit_pure">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="P07_01_2020To09_30_2020"
      decimals="INF"
      unitRef="Unit_pure">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:SummaryOfIncomeTaxExaminationsTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company&#x2019;s tax returns are subject to examination by federal, state and international tax authorities for the following periods: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 85%; font-family: 'Times New Roman';"/&gt;
&lt;td style="width: 4%; vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt;
&lt;td style="font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.5pt;"&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Jurisdiction&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Fiscal Years&lt;br/&gt; Subject to&lt;br/&gt; Examination&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;United States - federal and state&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;2016-2019&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Sweden&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;2013-2019&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Germany&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:center;"&gt;2019&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Netherlands&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;2013-2019&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:SummaryOfIncomeTaxExaminationsTextBlock>
    <us-gaap:OpenTaxYear contextRef="P01_01_2020To09_30_2020_EarliestTaxYearMemberusgaapTaxPeriodAxis_USsrtStatementGeographicalAxis">2016</us-gaap:OpenTaxYear>
    <us-gaap:OpenTaxYear contextRef="P01_01_2020To09_30_2020_LatestTaxYearMemberusgaapTaxPeriodAxis_USsrtStatementGeographicalAxis">2019</us-gaap:OpenTaxYear>
    <us-gaap:OpenTaxYear contextRef="P01_01_2020To09_30_2020_EarliestTaxYearMemberusgaapTaxPeriodAxis_SEsrtStatementGeographicalAxis">2013</us-gaap:OpenTaxYear>
    <us-gaap:OpenTaxYear contextRef="P01_01_2020To09_30_2020_LatestTaxYearMemberusgaapTaxPeriodAxis_SEsrtStatementGeographicalAxis">2019</us-gaap:OpenTaxYear>
    <us-gaap:OpenTaxYear contextRef="P01_01_2020To09_30_2020_DEsrtStatementGeographicalAxis_LatestTaxYearMemberusgaapTaxPeriodAxis">2019</us-gaap:OpenTaxYear>
    <us-gaap:OpenTaxYear contextRef="P01_01_2020To09_30_2020_EarliestTaxYearMemberusgaapTaxPeriodAxis_NLsrtStatementGeographicalAxis">2013</us-gaap:OpenTaxYear>
    <us-gaap:OpenTaxYear contextRef="P01_01_2020To09_30_2020_LatestTaxYearMemberusgaapTaxPeriodAxis_NLsrtStatementGeographicalAxis">2019</us-gaap:OpenTaxYear>
    <us-gaap:EarningsPerShareTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;13.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Earnings Per Share &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;The Company reports earnings per share in accordance with ASC 260, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Earnings Per Share,&#x201d;&lt;/div&gt;&lt;/div&gt; which establishes standards for computing and presenting earnings per share. Basic earnings per share is computed by dividing net income available to common shareholders by the weighted average number of common shares outstanding during the period. Diluted earnings per share is computed by dividing net income available to common shareholders by the weighted-average number of common shares and dilutive common share equivalents then outstanding. Potential common share equivalents consist of restricted stock awards, performance stock units and the incremental common shares issuable upon the exercise of stock options. Under the treasury stock method, unexercised &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#x201c;in-the-money&#x201d;&lt;/div&gt;&lt;/div&gt; stock options and warrants are assumed to be exercised at the beginning of the period or at issuance, if later. The assumed proceeds are then used to purchase common shares at the average market price during the period. In periods when the Company has a net loss, stock awards are excluded from the calculation of earnings per share as their inclusion would have an antidilutive effect.&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Basic and diluted weighted average shares outstanding were as follows: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 69%;"/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Three Months Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Nine Months Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="14" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands,&#160;except&#160;per&#160;share&#160;data)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Net income&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14,552&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,659&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;40,228&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;17,807&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Weighted average shares used in computing net income per share -&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;diluted&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;52,545&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;50,852&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;52,341&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;47,087&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Effect of dilutive shares:&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Stock options and restricted stock awards&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;916&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;957&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;951&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;843&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Dilutive effect of unvested performance stock units&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;8&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;8&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Dilutive potential common shares&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;924&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;957&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;959&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;843&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Weighted average shares used in computing net income per share - diluted&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;53,469&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;51,809&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;53,300&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;47,930&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Earnings per share:&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Basic&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.28&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.03&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.77&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.38&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Diluted&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.27&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.03&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.75&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.37&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;At September&#160;30, 2020, there were outstanding options to purchase 723,914 shares of the Company&#x2019;s common stock at a weighted average exercise price of $41.03 per share and 675,567 shares of common stock issuable upon the vesting of stock units, which include RSUs and performance stock units. For the three and nine months ended September&#160;30, 2020, 60,202 and 117,160 shares of the Company&#x2019;s common stock were excluded from the calculation of diluted earnings per share 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. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;At September&#160;30, 2019, there were outstanding options to purchase 959,916 shares of the Company&#x2019;s common stock at a weighted average exercise price of $30.44 per share and 740,213 shares issuable upon the vesting of stock units. For the three and nine months ended September&#160;30, 2019, 47,705 and 85,503 shares of the Company&#x2019;s common stock were excluded from the calculation of diluted earnings per share 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.&lt;/div&gt;&lt;/div&gt;  &lt;div style="text-align: left;"&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;As provided by the terms of the indenture underlying the &lt;/div&gt;2016&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt; Notes, the Company had a choice to settl&lt;div style="display:inline;"&gt;e&lt;/div&gt;&#160;the conversion obligation for the &lt;/div&gt;2016&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt; Notes in cash, shares or any combination of the two.&#160;During the third quarter of &lt;/div&gt;2019&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;, the Company settled the remaining &lt;/div&gt;2016&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt; Notes for a total aggregate principal of $&lt;/div&gt;115.0&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;million and &lt;/div&gt;2,316,200&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt; shares of its common stock. As of March&#160;&lt;/div&gt;31&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;, &lt;/div&gt;2019&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;, the par value of the &lt;/div&gt;2016&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt; Notes is not included in the calculation of diluted earnings per share, but the dilutive effect of the conversion premium is considered in the calculation of diluted earnings per share using the treasury stock method. The dilutive impact of the &lt;/div&gt;2016&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt; Notes was based on the difference between the Company&#x2019;s current period average stock price and the conversion price of the &lt;/div&gt;2016&lt;div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt; Notes, provided there was a premium.&lt;/div&gt;&lt;/div&gt; &lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;In July 2019, the Company issued $287.5&#160;million aggregate principal amount of the 2019 Notes. As provided by the terms of the indenture underlying the 2019 Notes, conversion of the 2019 Notes will be settled in cash, shares of the Company&#x2019;s common stock or a combination thereof, at the Company&#x2019;s election. As of &lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;September&lt;/div&gt;&#160;30, 2020, the 2019 Notes were not convertible. The Company currently intends to settle the par value of the 2019 Notes in cash and any excess conversion premium in shares. The Company applies the provisions of ASC 260, &lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;&#x201c;Earnings Per Share&#x201d;,&lt;/div&gt;&lt;/div&gt; Subsection &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;10-45-44,&lt;/div&gt;&lt;/div&gt; to determine the diluted weighted average shares outstanding as it relates to the conversion spread on the 2019 Notes. Accordingly, the par value of the 2019 Notes is not included in the calculation of diluted income per share, but the dilutive effect of the conversion premium is considered in the calculation of diluted net income per share using the treasury stock method. The dilutive impact of the 2019 Notes is based on the difference between the Company&#x2019;s current period average stock price and the conversion price of the 2019 Notes, provided there is a premium. Pursuant to this accounting standard, there is no dilution from the accreted principal of the 2019 Notes for the three and nine months ended September&#160;30, 2020.&lt;/div&gt; </us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Basic and diluted weighted average shares outstanding were as follows: &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 69%;"/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 3%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Three Months Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Nine Months Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="14" style="vertical-align: bottom;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;(Amounts&#160;in&#160;thousands,&#160;except&#160;per&#160;share&#160;data)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Net income&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14,552&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;1,659&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;40,228&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;17,807&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Weighted average shares used in computing net income per share -&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;diluted&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;52,545&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;50,852&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;52,341&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;47,087&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Effect of dilutive shares:&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Stock options and restricted stock awards&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;916&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;957&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;951&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;843&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Dilutive effect of unvested performance stock units&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;8&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;8&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;;text-align:right;"&gt;&#x2014;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Dilutive potential common shares&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;924&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;957&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;959&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;843&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Weighted average shares used in computing net income per share - diluted&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;53,469&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;51,809&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;53,300&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;47,930&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Earnings per share:&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Basic&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.28&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.03&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.77&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.38&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Diluted&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.27&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.03&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.75&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt;$&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;0.37&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">14552000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">1659000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_USD">40228000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_USD">17807000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_shares">52545000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_shares">50852000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_shares">52341000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_shares">47087000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesRestrictedStock
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_shares">916000</us-gaap:WeightedAverageNumberOfSharesRestrictedStock>
    <us-gaap:WeightedAverageNumberOfSharesRestrictedStock
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_shares">957000</us-gaap:WeightedAverageNumberOfSharesRestrictedStock>
    <us-gaap:WeightedAverageNumberOfSharesRestrictedStock
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_shares">951000</us-gaap:WeightedAverageNumberOfSharesRestrictedStock>
    <us-gaap:WeightedAverageNumberOfSharesRestrictedStock
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_shares">843000</us-gaap:WeightedAverageNumberOfSharesRestrictedStock>
    <us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_shares">8000</us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities>
    <us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_shares">8000</us-gaap:IncrementalCommonSharesAttributableToConversionOfDebtSecurities>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_shares">924000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_shares">957000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_shares">959000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_shares">843000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="P07_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_shares">53469000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="P07_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_shares">51809000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="P01_01_2020To09_30_2020"
      decimals="-3"
      unitRef="Unit_shares">53300000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="P01_01_2019To09_30_2019"
      decimals="-3"
      unitRef="Unit_shares">47930000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="P07_01_2020To09_30_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.28</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="P07_01_2019To09_30_2019"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.03</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="P01_01_2020To09_30_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.77</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="P01_01_2019To09_30_2019"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.38</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="P07_01_2020To09_30_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.27</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="P07_01_2019To09_30_2019"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.03</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="P01_01_2020To09_30_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.75</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="P01_01_2019To09_30_2019"
      decimals="2"
      unitRef="Unit_USD_per_Share">0.37</us-gaap:EarningsPerShareDiluted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="PAsOn09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">723914</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="PAsOn09_30_2020"
      decimals="2"
      unitRef="Unit_USD_per_Share">41.03</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="PAsOn09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">675567</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="P07_01_2020To09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">60202</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="P01_01_2020To09_30_2020"
      decimals="INF"
      unitRef="Unit_shares">117160</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="PAsOn09_30_2019"
      decimals="INF"
      unitRef="Unit_shares">959916</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="PAsOn09_30_2019"
      decimals="2"
      unitRef="Unit_USD_per_Share">30.44</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="PAsOn09_30_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis"
      decimals="INF"
      unitRef="Unit_shares">740213</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="P07_01_2019To09_30_2019"
      decimals="INF"
      unitRef="Unit_shares">47705</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="P01_01_2019To09_30_2019"
      decimals="INF"
      unitRef="Unit_shares">85503</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="PAsOn09_30_2020_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMemberusgaapDebtInstrumentAxis"
      decimals="-5"
      unitRef="Unit_USD">115000000.0</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="P07_01_2020To09_30_2020_CommonStockMemberusgaapStatementEquityComponentsAxis"
      decimals="INF"
      unitRef="Unit_shares">2316200</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="PAsOn07_31_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis"
      decimals="INF"
      unitRef="Unit_USD">287500000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock contextRef="P01_01_2020To09_30_2020">
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;14.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Related Party Transactions &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Certain facilities leased by Spectrum are owned by Roy Eddleman, the former owner of Spectrum. As of September&#160;30, 2020, Mr.&#160;Eddleman owned greater than 5% of the Company&#x2019;s outstanding shares and the Company considers him to be a related party. The lease amounts paid to this shareholder prior to the public offering were negotiated in connection with the Spectrum Acquisition. The Company incurred rent expense totaling $0.1&#160;million and $0.5&#160;million for the three and nine months ended September&#160;30, 2020 related to these leases. &lt;/div&gt;&lt;/div&gt;</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners
      contextRef="PAsOn09_30_2020_MinimumMembersrtRangeAxis_PrincipalOwnerMemberusgaapRelatedPartyTransactionsByRelatedPartyAxis_SpectrumIncMembersrtOwnershipAxis"
      decimals="INF"
      unitRef="Unit_pure">0.05</us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners>
    <us-gaap:OperatingLeasesRentExpenseNet
      contextRef="P07_01_2020To09_30_2020_SpectrumIncMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">100000</us-gaap:OperatingLeasesRentExpenseNet>
    <us-gaap:OperatingLeasesRentExpenseNet
      contextRef="P01_01_2020To09_30_2020_SpectrumIncMemberusgaapBusinessAcquisitionAxis"
      decimals="-5"
      unitRef="Unit_USD">500000</us-gaap:OperatingLeasesRentExpenseNet>
    <us-gaap:SegmentReportingDisclosureTextBlock contextRef="P01_01_2020To09_30_2020">
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;15.&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Segment Reporting &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company views its operations, makes decisions regarding how to allocate resources and manages its business as one reportable segment and one reporting unit. As a result, the financial information disclosed herein represents all of the material financial information related to the Company. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The following table represents the Company&#x2019;s total revenue by geographic area (based on the location of the customer): &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 71%;"/&gt;
&lt;td style="width: 6%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Three&#160;Months&#160;Ended&lt;br/&gt; September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Nine&#160;Months&#160;Ended&lt;br/&gt; September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Revenue by customers&#x2019; geographic locations:&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;North America&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;50&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;54&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;48&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;51&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Europe&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;36&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;33&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;38&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;37&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;APAC&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;/Other&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"&gt;14&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"&gt;13&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"&gt;14&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"&gt;12&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top; background-color: rgb(204, 238, 255);"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total revenue&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;100&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;100&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;100&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;100&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"/&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Concentrations of Credit Risk and Significant Customers &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&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&#160;30, 2020 and December&#160;31, 2019, the Company had no investments associated with foreign exchange contracts, options contracts or other foreign hedging arrangements. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&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 &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;write-off&lt;/div&gt; 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;/div&gt; &lt;div style="text-align: left;"&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Revenue from significant customers that represent 10% or more of the Company&#x2019;s total revenue is as follows: &lt;/div&gt;&lt;/div&gt; &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 70%;"/&gt;
&lt;td style="width: 6%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 6%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Three&#160;Months&#160;Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Nine&#160;Months&#160;Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Cytiva (formerly GE Healthcare)&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;12&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;MilliporeSigma&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;11&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;  &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;There were no accounts receivable balances as of September&#160;30, 2020 representing 10% or more of the Company&#x2019;s total trade accounts receivable and royalties and other receivable balances. As of December&#160;31, 2019, the accounts receivable balance with Cytiva (formerly GE Healthcare) represented 18% of the Company&#x2019;s total trade accounts receivable and royalties and other receivables balances. &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; </us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfOperatingSegments
      contextRef="P01_01_2020To09_30_2020"
      decimals="INF"
      unitRef="Unit_Segment">1</us-gaap:NumberOfOperatingSegments>
    <us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock contextRef="P01_01_2020To09_30_2020_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis">&lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The following table represents the Company&#x2019;s total revenue by geographic area (based on the location of the customer): &lt;/div&gt;&lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 71%;"/&gt;
&lt;td style="width: 6%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Three&#160;Months&#160;Ended&lt;br/&gt; September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Nine&#160;Months&#160;Ended&lt;br/&gt; September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Revenue by customers&#x2019; geographic locations:&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;North America&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;50&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;54&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;48&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;51&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Europe&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;36&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;33&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;38&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;37&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;APAC&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;/Other&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"&gt;14&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"&gt;13&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"&gt;14&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;"&gt;12&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"/&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom;"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top; background-color: rgb(204, 238, 255);"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Total revenue&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;100&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;100&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;100&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgb(204, 238, 255);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;"&gt;100&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-size: 1px;"&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"/&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"&gt; &lt;div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; background-color: rgba(255, 255, 255, 0);"&gt;&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P07_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">0.50</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P07_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">0.54</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P01_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">0.48</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P01_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_NorthAmericaMembersrtStatementGeographicalAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">0.51</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P07_01_2020To09_30_2020_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">0.36</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P07_01_2019To09_30_2019_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">0.33</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P01_01_2020To09_30_2020_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">0.38</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P01_01_2019To09_30_2019_EuropeMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">0.37</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P07_01_2020To09_30_2020_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">0.14</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P07_01_2019To09_30_2019_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">0.13</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P01_01_2020To09_30_2020_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">0.14</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P01_01_2019To09_30_2019_ApacOtherMembersrtStatementGeographicalAxis_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">0.12</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P07_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P07_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P01_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P01_01_2019To09_30_2019_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="INF"
      unitRef="Unit_pure">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock contextRef="P01_01_2020To09_30_2020">&lt;div style="text-align: left;"&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Revenue from significant customers that represent 10% or more of the Company&#x2019;s total revenue is as follows: &lt;/div&gt;&lt;/div&gt; &lt;/div&gt; &lt;div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&#160;&lt;/div&gt;&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="font-size: 0px;"&gt;
&lt;td style="width: 70%;"/&gt;
&lt;td style="width: 6%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 6%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td style="width: 5%; vertical-align: bottom;"/&gt;
&lt;td/&gt;
&lt;td/&gt;
&lt;td/&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Three&#160;Months&#160;Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt;
&lt;td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;Nine&#160;Months&#160;Ended&lt;/div&gt;&lt;/div&gt;&lt;br/&gt; &lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;September&#160;30,&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2020&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;2019&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Cytiva (formerly GE Healthcare)&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;12&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt;
&lt;tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;"&gt;
&lt;td style="vertical-align: top;"&gt; &lt;div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;MilliporeSigma&lt;/div&gt;&lt;/div&gt; &lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;N/A&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;11&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom; font-family: 'Times New Roman';"&gt;&#160;&lt;/td&gt;
&lt;td style="vertical-align: bottom;;text-align:right;"&gt;14&lt;/td&gt;
&lt;td style="vertical-align: bottom; white-space: nowrap;"&gt;%&#160;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; </us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P01_01_2019To09_30_2019_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_CytivaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="2"
      unitRef="Unit_pure">0.12</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P07_01_2019To09_30_2019_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MilliporeSigmaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="2"
      unitRef="Unit_pure">0.14</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P01_01_2020To09_30_2020_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MilliporeSigmaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="2"
      unitRef="Unit_pure">0.11</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P01_01_2019To09_30_2019_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_MilliporeSigmaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis"
      decimals="2"
      unitRef="Unit_pure">0.14</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P01_01_2020To09_30_2020_AccountsReceivableMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_CytivaMembersrtMajorCustomersAxis"
      decimals="0"
      unitRef="Unit_pure">0</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="P01_01_2019To12_31_2019_AccountsReceivableMemberusgaapConcentrationRiskByBenchmarkAxis_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_CytivaMembersrtMajorCustomersAxis"
      decimals="2"
      unitRef="Unit_pure">0.18</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:SubsequentEventsTextBlock contextRef="P01_01_2020To09_30_2020">
&lt;table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;"&gt;
&lt;tr style="page-break-inside: avoid;"&gt;
&lt;td style="width: 4%; vertical-align: top;;text-align:left;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;16.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td style="vertical-align: top;;text-align:left;"&gt; &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Subsequent Events &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Acquisition of &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Non-Metallic&lt;/div&gt; Solutions, Inc. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;On October&#160;15, 2020, the Company entered into a Stock Purchase Agreement with &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;Non-Metallic&lt;/div&gt; Solutions, Inc. (&#x201c;NMS&#x201d;), a Massachusetts corporation, and William Mallone&#xe9; and Derek Masser, the legal and beneficial owners of NMS, to purchase NMS, which transaction subsequently closed on October&#160;20, 2020 (the &#x201c;NMS Acquisition&#x201d;). &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;NMS, which is headquartered in Auburn, Massachusetts, is a manufacturer of fabricated plastics, custom containers, and related assemblies and components used in the manufacturing of biologic drugs. NMS&#x2019;s products will complement and expand Repligen&#x2019;s &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;single-use&lt;/div&gt; product offerings. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company will account for the NMS Acquisition as a purchase of a 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 NMS Acquisition will be included in the Annual Report on Form &lt;div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"&gt;10-K&lt;/div&gt; for the period ended December&#160;31, 2020. As disclosed in the Quarterly Report on Form 10-Q for the period ended June 30, 2020, the Company voluntarily adopted the amendments to financial disclosure requirements around the significance tests in the &#x201c;significant subsidiaries&#x201d; definition in Rule 1-02(w), Securities Act Rule 405, and Exchange Act Rule 12b-2. As a result, the Company determined that NMS is not a significant subsidiary and therefore no separate financial statements are required. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-weight:bold;display:inline;"&gt;&lt;div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-style:italic;display:inline;"&gt;Proposed Acquisition of ARTeSYN Biosolutions &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;On October 27, 2020, the Company executed an Equity and Asset Purchase Agreement (&#x201c;Purchase Agreement&#x201d;) with ARTeSYN Biosolutions Holdings Ireland Limited, a company organized under the laws of Ireland (&#x201c;ARTeSYN&#x201d;), Third Creek Holdings, LLC, a Nevada limited liability company, Alphinity, LLC, a Nevada limited liability company (&#x201c;Alphinity&#x201d;, and together with Third Creek Holdings, LLC the &#x201c;Sellers&#x201d;), and Michael Gagne, solely in his capacity as the representative of the Sellers, pursuant to which the Company will acquire (i) all of the outstanding equity securities of ARTeSYN and (ii) certain assets from Alphinity related to the business of ARTeSYN (collectively, the &#x201c;ARTeSYN Acquisition&#x201d;) for approximately $200 million, comprised of approximately $130 million in cash to Third Creek and Alphinity and approximately $70 million in Repligen common stock to Third Creek. Subject to certain closing conditions, including the expiration and termination of the waiting period under the Hart-Scott Rodino Antitrust Improvements Act of 1976, as amended, the transaction is expected to close in the fourth quarter of 2020. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;ARTeSYN, headquartered in Waterford, Ireland, is a biosystems innovator that has had success with its single-use chromatography and filtration systems, which are considered the gold standard in downstream bioprocessing due to their performance, automation and low hold-up volumes. The proposed ARTeSYN Acquisition, combined with the recent acquisitions of EMT and NMS, further establishes Repligen as a premier player in single-use systems and associated integrated flow path assemblies. ARTeSYN has established downstream processing leadership with a suite of state of the art single-use systems for chromatography, filtration, continuous manufacturing and media/buffer prep workflows. In addition, the Company has integrated unique flow path assemblies utilizing EMT&#x2019;s silicone extrusion and molding technology, to deliver highly differentiated, low hold-up volume systems that minimize product loss during processing. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="letter-spacing: 0px; top: 0px;;display:inline;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"&gt;The Company will account for the ARTeSYN Acquisition as a purchase of a business under ASC 805. Under the acquisition method of accounting, the net assets of ARTeSYN will be recorded as of the acquisition date, at their respective fair values, and consolidated with those of the Company. The Company has engaged a third-party valuation firm to assist with the valuation of the business acquired, which is expected to be completed in the fourth quarter of 2020. The preparation of the valuation requires the use of significant assumptions and estimates. Critical estimates will include, but are not limited to, future expected cash flows, including projected revenues and expenses, and the applicable discount rates. Actual results may differ from these estimates. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:SubsequentEventsTextBlock>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="P10_27_2020To10_27_2020_ArtesynBiosolutionsMemberusgaapBusinessAcquisitionAxis_SubsequentEventMemberusgaapSubsequentEventTypeAxis"
      decimals="-6"
      unitRef="Unit_USD">200000000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="P10_27_2020To10_27_2020_ArtesynBiosolutionsMemberusgaapBusinessAcquisitionAxis_SubsequentEventMemberusgaapSubsequentEventTypeAxis"
      decimals="-6"
      unitRef="Unit_USD">130000000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable
      contextRef="P10_27_2020To10_27_2020_ArtesynBiosolutionsMemberusgaapBusinessAcquisitionAxis_SubsequentEventMemberusgaapSubsequentEventTypeAxis"
      decimals="-6"
      unitRef="Unit_USD">70000000</us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable>
    <link:footnoteLink
      xlink:role="http://www.xbrl.org/2003/role/link"
      xlink:type="extended">
        <link:loc
          xlink:href="#Fact_15357651"
          xlink:label="Fact_15357651"
          xlink:type="locator"/>
        <link:footnote id="FN_57221" xlink:label="FN_57221" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">Represents the number of vested options as of September 30, 2020 plus the number of unvested options expected to vest as of September 30, 2020 based on the unvested outstanding options at September 30, 2020 adjusted for estimated forfeiture rates of 8% for awards granted to non-executive level employees and 3% for awards granted to executive level employees.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_15357651"
          xlink:to="FN_57221"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_15357652"
          xlink:label="Fact_15357652"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_15357652"
          xlink:to="FN_57221"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_15357653"
          xlink:label="Fact_15357653"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_15357653"
          xlink:to="FN_57221"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_15357663"
          xlink:label="Fact_15357663"
          xlink:type="locator"/>
        <link:footnote id="FN_57222" xlink:label="FN_57222" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">Represents the number of vested stock units as of September 30, 2020 plus the number of unvested stock units expected to vest as of September 30, 2020 based on the unvested outstanding stock units at September 30, 2020 adjusted for estimated forfeiture rates of 8% for awards granted to non-executive level employees and 3% for awards granted to executive level employees.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_15357663"
          xlink:to="FN_57222"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_15357669"
          xlink:label="Fact_15357669"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_15357669"
          xlink:to="FN_57222"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_15357671"
          xlink:label="Fact_15357671"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_15357671"
          xlink:to="FN_57222"
          xlink:type="arc"/>
    </link:footnoteLink>
</xbrl>
</XML>
</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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476531416">
<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, 2020</div></th>
<th class="th"><div>Nov. 02, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_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="top.Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2020<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">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="top.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="top.Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Sep. 30,  2020<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_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="top.Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">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="top.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="top.Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Large Accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">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="top.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="top.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="top.Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">DE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">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="top.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="top.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="top.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="top.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="top.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="top.Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">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="top.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="top.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="top.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="top.Show.showAR( this, 'defref_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">52,619,271<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in CCYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The end date of the period reflected on the cover page if a periodic report. For all other reports and registration statements containing historical data, it is the date up through which that historical data is presented.  If there is no historical data in the report, use the filing date. The format of the date is CCYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentQuarterlyReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an quarterly report.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-Q<br> -Number 240<br> -Section 13<br> -Subsection a-13<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1-<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330483329224">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONSOLIDATED BALANCE SHEETS - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 553,302<span></span>
</td>
<td class="nump">$ 528,392<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestrictedCash', window );">Restricted cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,015<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net of allowances of $621 and $525 at September 30, 2020 and December 31, 2019, respectively</a></td>
<td class="nump">55,830<span></span>
</td>
<td class="nump">43,068<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherReceivablesGrossCurrent', window );">Royalties and other receivables</a></td>
<td class="nump">95<span></span>
</td>
<td class="nump">148<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnbilledReceivablesCurrent', window );">Unbilled receivables</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">456<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">78,531<span></span>
</td>
<td class="nump">54,832<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">8,970<span></span>
</td>
<td class="nump">5,917<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">696,728<span></span>
</td>
<td class="nump">641,828<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">55,355<span></span>
</td>
<td class="nump">48,455<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="nump">215,385<span></span>
</td>
<td class="nump">212,552<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">482,043<span></span>
</td>
<td class="nump">468,413<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred tax assets</a></td>
<td class="nump">2,192<span></span>
</td>
<td class="nump">2,920<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right of use assets</a></td>
<td class="nump">24,201<span></span>
</td>
<td class="nump">25,707<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherAssetsNoncurrent', window );">Other assets</a></td>
<td class="nump">412<span></span>
</td>
<td class="nump">238<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">1,476,316<span></span>
</td>
<td class="nump">1,400,113<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">14,483<span></span>
</td>
<td class="nump">11,425<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Operating lease liability</a></td>
<td class="nump">4,460<span></span>
</td>
<td class="nump">3,557<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">32,041<span></span>
</td>
<td class="nump">33,331<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">50,984<span></span>
</td>
<td class="nump">48,313<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConvertibleLongTermNotesPayable', window );">Convertible senior notes, net</a></td>
<td class="nump">240,942<span></span>
</td>
<td class="nump">232,767<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent', window );">Deferred tax liabilities</a></td>
<td class="nump">29,435<span></span>
</td>
<td class="nump">29,944<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Operating lease liability, long-term</a></td>
<td class="nump">26,378<span></span>
</td>
<td class="nump">26,995<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesNoncurrent', window );">Other liabilities, long-term</a></td>
<td class="nump">3,707<span></span>
</td>
<td class="nump">2,326<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">351,446<span></span>
</td>
<td class="nump">340,345<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingencies (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="top.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="top.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="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, $0.01 par value; 80,000,000 shares authorized; 52,606,700 shares at September 30, 2020 and 52,078,258 shares at December 31, 2019 issued and outstanding</a></td>
<td class="nump">526<span></span>
</td>
<td class="nump">521<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapitalCommonStock', window );">Additional paid-in capital</a></td>
<td class="nump">1,087,996<span></span>
</td>
<td class="nump">1,068,431<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive loss</a></td>
<td class="num">(9,723)<span></span>
</td>
<td class="num">(15,027)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">46,071<span></span>
</td>
<td class="nump">5,843<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total stockholders' equity</a></td>
<td class="nump">1,124,870<span></span>
</td>
<td class="nump">1,059,768<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and stockholders' equity</a></td>
<td class="nump">$ 1,476,316<span></span>
</td>
<td class="nump">$ 1,400,113<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118952595&amp;loc=d3e4428-111522<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=118952595&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e637-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669686-108580<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e681-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapitalCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapitalCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6801-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3044-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.25)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03.(a),19)<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118942415&amp;loc=d3e14326-108349<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConvertibleLongTermNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of long-term debt (with maturities initially due after one year or beyond the operating cycle if longer) identified as Convertible Notes Payable, excluding current portion. 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConvertibleLongTermNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences, with jurisdictional netting, and liabilities classified as noncurrent and other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=77989000&amp;loc=SL49117168-202975<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116846819&amp;loc=d3e3927-108312<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncurrent assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_OtherReceivablesGrossCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, before allowance, of receivables classified as other, due within one year or the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherReceivablesGrossCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(7))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestrictedCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash restricted as to withdrawal or usage. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=SL98516268-108586<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(1)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cumulative amount of the reporting entity's undistributed earnings or deficit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=27010918&amp;loc=d3e74512-122707<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnbilledReceivablesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount received for services rendered and products shipped, but not yet billed, for non-contractual agreements due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnbilledReceivablesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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>13
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330479603064">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONSOLIDATED BALANCE SHEETS (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Accounts receivable, reserve for doubtful accounts</a></td>
<td class="nump">$ 621<span></span>
</td>
<td class="nump">$ 525<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred stock, shares issued</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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="top.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="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued</a></td>
<td class="nump">52,606,700<span></span>
</td>
<td class="nump">52,078,258<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding</a></td>
<td class="nump">52,606,700<span></span>
</td>
<td class="nump">52,078,258<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=118936363&amp;loc=d3e5074-111524<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118955202&amp;loc=SL82895884-210446<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330471802760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) - USD ($)<br> shares in Thousands, $ 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, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 94,060<span></span>
</td>
<td class="nump">$ 69,445<span></span>
</td>
<td class="nump">$ 257,612<span></span>
</td>
<td class="nump">$ 200,771<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of product revenue</a></td>
<td class="nump">39,626<span></span>
</td>
<td class="nump">31,425<span></span>
</td>
<td class="nump">108,471<span></span>
</td>
<td class="nump">88,978<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="nump">4,422<span></span>
</td>
<td class="nump">5,427<span></span>
</td>
<td class="nump">13,460<span></span>
</td>
<td class="nump">14,278<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SellingGeneralAndAdministrativeExpense', window );">Selling, general and administrative</a></td>
<td class="nump">29,051<span></span>
</td>
<td class="nump">24,629<span></span>
</td>
<td class="nump">83,277<span></span>
</td>
<td class="nump">67,326<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostsAndExpenses', window );">Total costs and operating expenses</a></td>
<td class="nump">73,099<span></span>
</td>
<td class="nump">61,481<span></span>
</td>
<td class="nump">205,208<span></span>
</td>
<td class="nump">170,582<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations</a></td>
<td class="nump">20,961<span></span>
</td>
<td class="nump">7,964<span></span>
</td>
<td class="nump">52,404<span></span>
</td>
<td class="nump">30,189<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InvestmentIncomeNet', window );">Investment income</a></td>
<td class="nump">82<span></span>
</td>
<td class="nump">1,898<span></span>
</td>
<td class="nump">1,699<span></span>
</td>
<td class="nump">3,616<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Loss on extinguishment of debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(5,650)<span></span>
</td>
<td class="nump">5,700<span></span>
</td>
<td class="num">(5,650)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="num">(3,052)<span></span>
</td>
<td class="num">(2,857)<span></span>
</td>
<td class="num">(9,032)<span></span>
</td>
<td class="num">(6,326)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other (expenses) income</a></td>
<td class="num">(248)<span></span>
</td>
<td class="nump">316<span></span>
</td>
<td class="num">(632)<span></span>
</td>
<td class="num">(23)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpense', window );">Other expenses, net</a></td>
<td class="num">(3,218)<span></span>
</td>
<td class="num">(6,293)<span></span>
</td>
<td class="num">(7,965)<span></span>
</td>
<td class="num">(8,383)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">17,743<span></span>
</td>
<td class="nump">1,671<span></span>
</td>
<td class="nump">44,439<span></span>
</td>
<td class="nump">21,806<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax provision</a></td>
<td class="nump">3,191<span></span>
</td>
<td class="nump">12<span></span>
</td>
<td class="nump">4,211<span></span>
</td>
<td class="nump">3,999<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 14,552<span></span>
</td>
<td class="nump">$ 1,659<span></span>
</td>
<td class="nump">$ 40,228<span></span>
</td>
<td class="nump">$ 17,807<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings per share:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic</a></td>
<td class="nump">$ 0.28<span></span>
</td>
<td class="nump">$ 0.03<span></span>
</td>
<td class="nump">$ 0.77<span></span>
</td>
<td class="nump">$ 0.38<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted</a></td>
<td class="nump">$ 0.27<span></span>
</td>
<td class="nump">$ 0.03<span></span>
</td>
<td class="nump">$ 0.75<span></span>
</td>
<td class="nump">$ 0.37<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic</a></td>
<td class="nump">52,545<span></span>
</td>
<td class="nump">50,852<span></span>
</td>
<td class="nump">52,341<span></span>
</td>
<td class="nump">47,087<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted</a></td>
<td class="nump">53,469<span></span>
</td>
<td class="nump">51,809<span></span>
</td>
<td class="nump">53,300<span></span>
</td>
<td class="nump">47,930<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 14,552<span></span>
</td>
<td class="nump">$ 1,659<span></span>
</td>
<td class="nump">$ 40,228<span></span>
</td>
<td class="nump">$ 17,807<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="nump">4,390<span></span>
</td>
<td class="num">(6,741)<span></span>
</td>
<td class="nump">5,304<span></span>
</td>
<td class="num">(9,901)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Comprehensive income (loss)</a></td>
<td class="nump">18,942<span></span>
</td>
<td class="num">(5,082)<span></span>
</td>
<td class="nump">45,532<span></span>
</td>
<td class="nump">7,906<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_ProductMember', window );">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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>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="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">94,029<span></span>
</td>
<td class="nump">69,419<span></span>
</td>
<td class="nump">257,521<span></span>
</td>
<td class="nump">200,701<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>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="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 31<span></span>
</td>
<td class="nump">$ 26<span></span>
</td>
<td class="nump">$ 91<span></span>
</td>
<td class="nump">$ 70<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e557-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostsAndExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total costs of sales and operating expenses for the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12355-112629<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12317-112629<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=68072869&amp;loc=d3e41242-110953<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109238882&amp;loc=d3e38679-109324<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28555-108399<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (210.5-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7(a),(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.8)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669646-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (b,c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNonoperatingIncomeExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 730<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130545-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130543-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenuesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 30<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=68048583&amp;loc=d3e3636-108311<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1448-109256<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=us-gaap_ProductMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=us-gaap_ProductMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=us-gaap_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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330471708936">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid- In Capital</div></th>
<th class="th"><div>Accumulated Other Comprehensive Loss</div></th>
<th class="th"><div>Retained Earnings/ (Accumulated Deficit)</div></th>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2018</a></td>
<td class="nump">$ 615,568<span></span>
</td>
<td class="nump">$ 439<span></span>
</td>
<td class="nump">$ 642,590<span></span>
</td>
<td class="num">$ (11,893)<span></span>
</td>
<td class="num">$ (15,568)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Dec. 31, 2018</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">43,917,378<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">17,807<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17,807<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueConversionOfUnits', window );">Issuance of common stock for debt conversion</a></td>
<td class="nump">198,757<span></span>
</td>
<td class="nump">$ 23<span></span>
</td>
<td class="nump">198,734<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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,316,229<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt', window );">Reduction for equity component from debt conversion, net of tax</a></td>
<td class="num">(200,079)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(200,079)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Exercise of stock options and releases of restricted stock</a></td>
<td class="nump">1,058<span></span>
</td>
<td class="nump">$ 3<span></span>
</td>
<td class="nump">1,055<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Exercise of stock options and releases of restricted stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">311,299<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueAcquisitions', window );">Issuance of common stock pursuant to the acquisition of C Technologies, Inc.</a></td>
<td class="nump">53,938<span></span>
</td>
<td class="nump">$ 8<span></span>
</td>
<td class="nump">53,930<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesAcquisitions', window );">Issuance of common stock pursuant to the acquisition of C Technologies, Inc., (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">779,221<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Tax withholding on vesting of restricted stock units</a></td>
<td class="num">(290)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(290)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Tax withholding on vesting of restricted stock units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(3,077)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt', window );">Equity component of 0.375% senior convertible notes, net of tax</a></td>
<td class="nump">38,088<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">38,088<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueNewIssues', window );">Proceeds from issuance of common stock, net of issuance costs</a></td>
<td class="nump">320,713<span></span>
</td>
<td class="nump">$ 48<span></span>
</td>
<td class="nump">320,665<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Proceeds from issuance of common stock, net of issuance costs (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,731,531<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="nump">9,459<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,459<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="top.Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax', window );">Translation adjustment at Dec. 31, 2018</a></td>
<td class="num">(9,901)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(9,901)<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="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Sep. 30, 2019</a></td>
<td class="nump">1,045,118<span></span>
</td>
<td class="nump">$ 521<span></span>
</td>
<td class="nump">1,064,152<span></span>
</td>
<td class="num">(21,794)<span></span>
</td>
<td class="nump">2,239<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Sep. 30, 2019</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">52,052,581<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Jun. 30, 2019</a></td>
<td class="nump">878,968<span></span>
</td>
<td class="nump">$ 481<span></span>
</td>
<td class="nump">892,960<span></span>
</td>
<td class="num">(15,053)<span></span>
</td>
<td class="nump">580<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Jun. 30, 2019</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">48,086,422<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">1,659<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,659<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueConversionOfUnits', window );">Issuance of common stock for debt conversion</a></td>
<td class="nump">198,755<span></span>
</td>
<td class="nump">$ 23<span></span>
</td>
<td class="nump">198,732<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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,316,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt', window );">Reduction for equity component from debt conversion, net of tax</a></td>
<td class="num">(200,079)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(200,079)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Exercise of stock options and releases of restricted stock</a></td>
<td class="nump">494<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">493<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Exercise of stock options and releases of restricted stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">66,036<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Tax withholding on vesting of restricted stock units</a></td>
<td class="num">(290)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(290)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Tax withholding on vesting of restricted stock units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(3,077)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt', window );">Equity component of 0.375% senior convertible notes, net of tax</a></td>
<td class="nump">38,088<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">38,088<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueNewIssues', window );">Proceeds from issuance of common stock, net of issuance costs</a></td>
<td class="nump">131,089<span></span>
</td>
<td class="nump">$ 16<span></span>
</td>
<td class="nump">131,073<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Proceeds from issuance of common stock, net of issuance costs (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,587,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="nump">3,175<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,175<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="top.Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax', window );">Translation adjustment at Jun. 30, 2019</a></td>
<td class="num">(6,741)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(6,741)<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="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Sep. 30, 2019</a></td>
<td class="nump">1,045,118<span></span>
</td>
<td class="nump">$ 521<span></span>
</td>
<td class="nump">1,064,152<span></span>
</td>
<td class="num">(21,794)<span></span>
</td>
<td class="nump">2,239<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Sep. 30, 2019</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">52,052,581<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2019</a></td>
<td class="nump">1,059,768<span></span>
</td>
<td class="nump">$ 521<span></span>
</td>
<td class="nump">1,068,431<span></span>
</td>
<td class="num">(15,027)<span></span>
</td>
<td class="nump">5,843<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Dec. 31, 2019</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">52,078,258<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">40,228<span></span>
</td>
<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,228<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Exercise of stock options and releases of restricted stock</a></td>
<td class="nump">7,078<span></span>
</td>
<td class="nump">$ 5<span></span>
</td>
<td class="nump">7,073<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Exercise of stock options and releases of restricted stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">528,442<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="nump">12,492<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,492<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="top.Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax', window );">Translation adjustment at Dec. 31, 2019</a></td>
<td class="nump">5,304<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,304<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="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Sep. 30, 2020</a></td>
<td class="nump">1,124,870<span></span>
</td>
<td class="nump">$ 526<span></span>
</td>
<td class="nump">1,087,996<span></span>
</td>
<td class="num">(9,723)<span></span>
</td>
<td class="nump">46,071<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Sep. 30, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">52,606,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Jun. 30, 2020</a></td>
<td class="nump">1,100,027<span></span>
</td>
<td class="nump">$ 525<span></span>
</td>
<td class="nump">1,082,096<span></span>
</td>
<td class="num">(14,113)<span></span>
</td>
<td class="nump">31,519<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Jun. 30, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">52,494,884<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">14,552<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">14,552<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Exercise of stock options and releases of restricted stock</a></td>
<td class="nump">1,676<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">1,675<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Exercise of stock options and releases of restricted stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">111,816<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="nump">4,225<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,225<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="top.Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax', window );">Translation adjustment at Jun. 30, 2020</a></td>
<td class="nump">4,390<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,390<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="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Sep. 30, 2020</a></td>
<td class="nump">$ 1,124,870<span></span>
</td>
<td class="nump">$ 526<span></span>
</td>
<td class="nump">$ 1,087,996<span></span>
</td>
<td class="num">$ (9,723)<span></span>
</td>
<td class="nump">$ 46,071<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Sep. 30, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">52,606,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Adjustments To Additional Paid In Capital Reduction For Equity Component Of Convertible Debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accumulated 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e637-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32022-110900<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=d3e681-108580<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5A<br> -URI http://asc.fasb.org/extlink&amp;oid=116690757&amp;loc=SL116692626-108610<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669646-108580<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669686-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Adjustment to additional paid in capital resulting from the recognition of convertible debt instruments as two separate components - a debt component and an equity component. This bifurcation may result in a basis difference associated with the liability component that represents a temporary difference for purposes of applying accounting for income taxes. The initial recognition of deferred taxes for the tax effect of that temporary difference is as an adjustment to additional paid in capital.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 25<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=51819886&amp;loc=SL6014347-161799<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=118258462&amp;loc=d3e11149-113907<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5047-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=118258462&amp;loc=d3e11178-113907<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116855982&amp;loc=d3e4534-113899<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued which are neither cancelled nor held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesAcquisitions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares of stock issued during the period pursuant to acquisitions.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21475-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_StockIssuedDuringPeriodSharesNewIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of new stock issued during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesNewIssues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueAcquisitions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Value of stock issued pursuant to acquisitions during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Value 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_StockIssuedDuringPeriodValueNewIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueNewIssues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5047-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=27010918&amp;loc=d3e74512-122707<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330471281592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)<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, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2019 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts', window );">Proceeds from issuance of common stock, net of issuance cost</a></td>
<td class="nump">$ 6,981<span></span>
</td>
<td class="nump">$ 18,607<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember', 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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Senior convertible notes</a></td>
<td class="nump">0.375%<span></span>
</td>
<td class="nump">0.375%<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_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in additional paid in capital (APIC) resulting from direct costs associated with issuing stock. Includes, but is not limited to, legal and accounting fees and direct costs associated with stock issues under a shelf registration.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476689336">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 40,228<span></span>
</td>
<td class="nump">$ 17,807<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to 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="top.Show.showAR( this, 'defref_us-gaap_DepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">19,581<span></span>
</td>
<td class="nump">14,791<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfDebtDiscountPremium', window );">Non-cash interest expense</a></td>
<td class="nump">8,175<span></span>
</td>
<td class="nump">4,863<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="nump">12,492<span></span>
</td>
<td class="nump">9,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="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income taxes, net</a></td>
<td class="nump">72<span></span>
</td>
<td class="num">(9,680)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Loss on extinguishment of debt</a></td>
<td class="num">(5,700)<span></span>
</td>
<td class="nump">5,650<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherNoncashIncomeExpense', window );">Other</a></td>
<td class="nump">228<span></span>
</td>
<td class="nump">114<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="num">(11,515)<span></span>
</td>
<td class="num">(6,734)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherReceivables', window );">Royalties and other receivables</a></td>
<td class="nump">157<span></span>
</td>
<td class="nump">26<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInContractWithCustomerAsset', window );">Unbilled receivables</a></td>
<td class="nump">456<span></span>
</td>
<td class="nump">2,047<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="num">(22,767)<span></span>
</td>
<td class="num">(4,891)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Prepaid expenses and other assets</a></td>
<td class="num">(2,908)<span></span>
</td>
<td class="num">(1,075)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset', window );">Operating lease right of use assets</a></td>
<td class="nump">2,574<span></span>
</td>
<td class="nump">787<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets', window );">Other assets</a></td>
<td class="num">(260)<span></span>
</td>
<td class="num">(66)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="nump">3,317<span></span>
</td>
<td class="num">(780)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedLiabilities', window );">Accrued expenses</a></td>
<td class="num">(2,712)<span></span>
</td>
<td class="nump">7,263<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_IncreasedecreaseInOperatingLeaseLiability', window );">Operating lease liability</a></td>
<td class="num">(831)<span></span>
</td>
<td class="num">(607)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities', window );">Long-term liabilities</a></td>
<td class="nump">1,467<span></span>
</td>
<td class="nump">10,568<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Total cash provided by operating activities</a></td>
<td class="nump">47,754<span></span>
</td>
<td class="nump">49,542<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows from investing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Acquisitions, net of cash acquired</a></td>
<td class="num">(28,445)<span></span>
</td>
<td class="num">(182,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="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireSoftware', window );">Additions to capitalized software costs</a></td>
<td class="num">(3,585)<span></span>
</td>
<td class="num">(4,630)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchases of property, plant and equipment</a></td>
<td class="num">(11,067)<span></span>
</td>
<td class="num">(11,413)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Total cash used in investing activities</a></td>
<td class="num">(43,097)<span></span>
</td>
<td class="num">(198,197)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromStockOptionsExercised', window );">Proceeds from exercise of stock options</a></td>
<td class="nump">7,088<span></span>
</td>
<td class="nump">1,058<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Payment of tax withholding obligation on vesting of restricted stock</a></td>
<td class="num">(10)<span></span>
</td>
<td class="num">(290)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromConvertibleDebt', window );">Proceeds from issuance of convertible debt, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">278,555<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfCommonStock', window );">Proceeds from issuance of common stock, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">320,713<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfConvertibleDebt', window );">Repayment of senior convertible notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(114,989)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Total cash provided by financing activities</a></td>
<td class="nump">7,078<span></span>
</td>
<td class="nump">485,047<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents', window );">Effect of exchange rate changes on cash, cash equivalents and restricted cash</a></td>
<td class="nump">4,160<span></span>
</td>
<td class="num">(7,785)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net increase in cash, cash equivalents and restricted cash</a></td>
<td class="nump">15,895<span></span>
</td>
<td class="nump">328,607<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash, cash equivalents and restricted cash, beginning of period</a></td>
<td class="nump">537,407<span></span>
</td>
<td class="nump">193,822<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash, cash equivalents and restricted cash, end of period</a></td>
<td class="nump">553,302<span></span>
</td>
<td class="nump">522,429<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_rgen_AssetsAcquiredUnderOperatingLeases', window );">Assets acquired under operating leases</a></td>
<td class="nump">$ 1,456<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtConversionConvertedInstrumentAmount1', window );">Fair value of 2,316,229 shares of common stock issued for conversion of convertible notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">198,757<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssued1', window );">Fair value of common stock issued for acquisition of C Technologies, Inc.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 53,938<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_AssetsAcquiredUnderOperatingLeases">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Assets acquired under operating leases.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_AssetsAcquiredUnderOperatingLeases</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_IncreasedecreaseInOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_IncreasedecreaseInOperatingLeaseLiability</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_IncreasedecreaseInOperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in operating lease right of use asset.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfDebtDiscountPremium">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense included in interest expense to amortize debt discount and premium associated with the related debt instruments. Excludes amortization of financing costs. Alternate captions include noncash interest expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1A<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28541-108399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.8)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfDebtDiscountPremium</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3521-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3044-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=SL98516268-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=98513438&amp;loc=d3e33268-110906<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtConversionConvertedInstrumentAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The value of the financial instrument(s) that the original debt is being converted into in a noncash (or part noncash) transaction. "Part noncash" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4304-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4332-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtConversionConvertedInstrumentAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_EffectOfExchangeRateOnCashAndCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from the effect of exchange rate changes on cash and cash equivalent balances held in foreign currencies.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=98513438&amp;loc=d3e33268-110906<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12355-112629<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12317-112629<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInContractWithCustomerAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInContractWithCustomerAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in noncurrent operating liabilities classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_IncreaseDecreaseInOtherReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in receivables classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in prepaid expenses, and assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3536-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3521-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNoncashIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_PaymentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireSoftware">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ProceedsFromConvertibleDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ProceedsFromIssuanceOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from the additional capital contribution to the entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ProceedsFromStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from exercise of option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=SL79508275-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfConvertibleDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The fair value of stock issued in noncash financing activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4304-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4332-108586<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4313-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>
</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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476244024">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">Summary of Significant Accounting Policies</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">1.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Summary of Significant Accounting Policies </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Basis of Presentation </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The consolidated financial statements included herein have been prepared by Repligen Corporation (the &#8220;Company&#8221;, &#8220;Repligen&#8221; or &#8220;we&#8221;) in accordance with generally accepted accounting principles in the United States (&#8220;GAAP&#8221;) and pursuant to the rules and regulations of the Securities and Exchange Commission (&#8220;SEC&#8221;), for Quarterly Reports on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-Q</div> and Article 10 of Regulation <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">S-X</div> and do not include all of the information and footnote disclosures required by GAAP. These 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 <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K</div> (&#8220;Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K&#8221;)</div> for the fiscal year ended December&#160;31, 2019.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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 period. Actual results could differ from those estimates. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries, Repligen Sweden AB, Repligen GmbH, Spectrum LifeSciences, LLC and its subsidiaries (&#8220;Spectrum&#8221;), C Technologies, Inc. (&#8220;C Technologies&#8221;), Engineered Molding Technology (&#8220;EMT&#8221;) and Repligen Singapore Pte. Ltd. All significant intercompany accounts and transactions have been eliminated in consolidation. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company made no material changes in the application of<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;its</div>&#160;significant accounting policies that were disclosed in its&#160;Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K.</div> In the opinion of management, the accompanying unaudited consolidated financial statements include all adjustments, consisting of only normal, recurring adjustments necessary for a fair presentation of the financial position, results of operations and cash flows. The results of operations for the interim periods presented are not necessarily indicative of results to be expected for the entire year.</div><div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Risks and Uncertainties </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">The ultimate impact that the current pandemic of the novel coronavirus (&#8220;COVID-19&#8221;), may have on the Company and its customers, employees, suppliers, vendors, business partners and distribution channels is currently unknown. The Company is closely monitoring the impact of this evolving situation on all aspects of its business. While COVID-19 did not materially affect the Company&#8217;s financial results and business operations in the Company&#8217;s three and nine months ended September 30, 2020, the Company is unable to predict the impact that COVID-19 may have on its financial position and operations moving forward due to numerous uncertainties. These estimates may change as new events occur and additional information is obtained, and actual results could differ materially from these estimates under different assumptions or conditions. The Company will continue to assess the evolving impact of COVID-19 and will make adjustments to its operations as necessary.&#160;</div></div></div><div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Recent Accounting Standards Updates </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">We consider the applicability and impact of all Accounting Standards Updates on the Company&#8217;s consolidated financial statements. Updates not listed below were assessed and determined to be either not applicable or are expected to have minimal impact on the Company&#8217;s consolidated financial position or results of operations. Recently issued Accounting Standards Updates that we feel may be applicable to the Company are as follows: </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Recently Issued Accounting Standard Updates &#8211; Adopted During the Period </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In August 2018, the Financial Accounting Standards Board (&#8220;FASB&#8221;) issued Accounting Standards Update No. (&#8220;ASU&#8221;) <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13,</div> <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Fair Value Measurement (Topic 820): Disclosure Framework &#8211; Changes to the Disclosure Requirements for Fair Value Measurement.&#8221; </div></div>ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> includes amendments that aim to improve the effectiveness of fair value measurement disclosures. The amendments in this guidance modify the disclosure requirements on fair value measurements based on the concepts in FASB Concepts Statement, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Conceptual Framework for Financial Reporting - Chapter 8: Notes to Financial Statements</div></div>,<div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8221;</div></div> including the consideration of costs and benefits. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> on January&#160;1, 2020. The adoption did not have a material impact on the Company&#8217;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;">In August 2018, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-15,</div> <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Intangibles &#8211; Goodwill and Other &#8211; <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Internal-Use</div> Software (Subtopic <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">350-40):</div> Customer&#8217;s Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement That Is a Service Contract.&#8221; </div></div>ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-15</div> aligns the requirements for capitalizing implementation costs incurred in a hosting arrangement that is a service contract with the requirements for capitalizing implementation costs incurred to develop or obtain <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">internal-use</div> software (and hosting arrangements that include an <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">internal-use</div> software license). The guidance also requires the entity to expense the capitalized implementation costs of a hosting arrangement that is a service contract over the term of the hosting arrangement, which includes reasonably certain renewals. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> on January&#160;1, 2020. The adoption did not have a material impact on the Company&#8217;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In June 2016, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13,</div> &#8220;<div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Financial Instruments-Credit Losses (Topic 326).&#8221;</div></div> ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13</div> significantly changes how entities will account for credit losses for most financial assets and certain other instruments that are not measured at fair value through net income. ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13</div> replaces the existing incurred loss model with an expected credit loss model that requires entities to estimate an expected lifetime credit loss on most financial assets and certain other instruments, including short-term trade receivables and contract assets, and expands disclosure requirements for credit quality of financial assets. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13</div> on January&#160;1, 2020. The Company assessed all potential impacts that the adoption of this guidance has on its consolidated financial statements. Based on the composition of the Company&#8217;s investment portfolio, accounts receivable, current market conditions and historical credit loss activity, the adoption of ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13</div> by the Company did not have a material impact on its consolidated financial position, results of operations or cash flows as of and for the three and nine months ended September&#160;30, 2020. The Company continues to monitor processes and controls for indications of an adjustment for future economic conditions at quarterly and annual reporting periods. See Note 5, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Credit Losses,&#8221; </div></div>below for more information on the Company&#8217;s adoption of ASC 326.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In November 2018, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-18,</div> <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Collaborative Arrangements (Topic 808): Clarifying the Interaction between Topic 808 and Topic 606.&#8221; </div></div>ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-18</div> clarifies the interaction between Topic 808, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Collaborative Arrangements,&#8221; </div></div>and Topic 606, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Revenue from Contracts with Customers,&#8221; </div></div>by making targeted improvements to GAAP for collaborative arrangements and providing guidance on whether certain transactions between collaborative arrangement participants should be accounted for with revenue under Topic 606. This includes improving comparability in the presentation of revenue for certain transactions between collaborative arrangement participants by allowing presentation of the units of account in collaborative arrangements that are within the scope of Topic 606 together with revenue accounted for under Topic 606. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> on January&#160;1, 2020. The adoption did not have a material impact on the Company&#8217;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In December 2019, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2019-12,</div> &#8220;<div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Income Taxes (Topic 740) &#8211; Simplifying the Accounting for Income Taxes.&#8221; </div></div>ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2019-12</div> simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740, including, but not limited to, the exception to the incremental approach for intraperiod tax allocation when there is a loss from continuing operations and income or a gain from other items, the exceptions related to the recognition of a deferred tax liability related to an equity method investment and the exception to methodology for calculating income taxes in an interim period when a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">year-to-date</div></div> loss exceeds the anticipated loss for the year. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> on January&#160;1, 2020. The adoption did not have a material impact on the Company&#8217;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Recently Issued Accounting Standard Updates &#8211; Not Yet Adopted </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In August 2020, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06,</div> &#8220;<div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Debt - Debt with Conversion and Other Options (Subtopic <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">470-20)</div> and Derivatives and Hedging - Contracts in Entity</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8217;</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">s Own Equity (Subtopic <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">815-40).</div></div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8221;</div></div> ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06</div> simplifies the accounting for convertible debt instruments and convertible preferred stock by reducing the number of accounting models and the number of embedded conversion features that could be recognized separately from the primary contract. ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06</div> also enhances transparency and improves disclosures for convertible instruments and earnings per share guidance. ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06</div> is effective for annual reporting periods beginning after December&#160;15, 2021, including interim periods within those fiscal years. Early adoption is permitted, but no earlier than fiscal years beginning after December&#160;15, 2020. This update permits the use of either the modified retrospective or fully retrospective method of transition. The Company is currently evaluating the timing and impact of the adoption of ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06</div> on the Company&#8217;s consolidated financial statements.</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_SignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI http://asc.fasb.org/topic&amp;trid=2122369<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330472382840">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresTextBlock', window );">Fair Value Measurements</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fair Value Measurements </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 3%;"/>
<td style="width: 1%; vertical-align: bottom;"/>
<td style="width: 7%;"/>
<td style="width: 1%; vertical-align: bottom;"/>
<td style="width: 88%;"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: top;">Level&#160;1&#160;&#8211;</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: top;">Valuations based on unadjusted quoted prices in active markets for identical assets or liabilities that the Company has the ability to access.</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"/>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: top;">Level&#160;2&#160;&#8211;</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: top;">Valuations based on quoted prices for similar assets or liabilities in active markets, quoted prices for identical or similar assets or liabilities in markets that are not active and models for which all significant inputs are observable, either directly or indirectly.</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"/>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: top;">Level&#160;3&#160;&#8211;</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: top;">Valuations based on inputs that are unobservable and significant to the overall fair value measurement.</td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">As of September&#160;30, 2020 and December&#160;31, 2019, cash and cash equivalents on the Company&#8217;s consolidated balance sheets included $395.6&#160;million and $415.6&#160;million, respectively, in a money market account. These funds are valued on a recurring basis using Level&#160;1 inputs. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In July 2019, the Company issued $287.5&#160;million aggregate principal amount of the Company&#8217;s 0.375% Convertible Senior Notes due July 15, 2024 (the &#8220;2019 Notes&#8221;). Interest is payable semi-annually in arrears on January&#160;15 and July&#160;15 of each year. The 2019 Notes will mature on July&#160;15, 2024<div style="display:inline;">,</div> unless earlier converted or repurchased in accordance with their terms. As of September&#160;30, 2020, the carrying value of the 2019 Notes was $240.9&#160;million, net of unamortized discount, and the fair value of the 2019 Notes was $416.0&#160;million. The fair value of the 2019 Notes is a Level&#160;1 valuation and was determined based on the most recent trade activity of the 2019 Notes as of September&#160;30, 2020. The 2019 Notes are discussed in more detail in Note 8, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Convertible Senior Notes&#8221; </div></div>to these consolidated financial statements.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company&#8217;s <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-financial</div> assets include goodwill and other intangible assets, which we classify as Level&#160;3 items. These assets are measured at fair value on a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-recurring</div> basis as part of our impairment testing. See Note 6, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Goodwill and Intangible Assets,&#8221; </div></div>below for additional information related to goodwill and intangible assets, and our impairment testing.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">During the three and nine months ended September&#160;30, 2020, there were no remeasurements to fair value of financial assets and liabilities that are not measured at fair value on a recurring basis. </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_FairValueDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330471596648">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationDisclosureTextBlock', window );">Acquisitions</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">3.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Acquisitions </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Engineered Molding Technology LLC </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On July&#160;13, 2020, the Company completed the acquisition of 100% of the membership interests of Engineered Molding Technology LLC (&#8220;EMT&#8221;), a New York limited liability&#160;company<div style="letter-spacing: 0px; top: 0px;;display:inline;">,</div> pursuant to a Membership Interest Purchase Agreement, dated June&#160;26, 2020, by and among the Company, EMT, and Michael Pandori and Todd Etesse, the legal and beneficial owners of EMT (such acquisition, the &#8220;EMT Acquisition&#8221;). </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">EMT, which is headquartered in Clifton Park, New York, is an innovator and manufacturer of <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> silicone assemblies and components used in the manufacturing of biologic drugs. EMT&#8217;s standard and custom molding as well as their over-molded connectors and silicone tubing products are key components in <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> filtration and chromatography systems. EMT&#8217;s products will complement and expand Repligen&#8217;s <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> product offerings.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Consideration Transferred </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The EMT <div style="letter-spacing: 0px; top: 0px;;display:inline;">Acquisition</div> was accounted for as a purchase of a business under ASC&#160;805, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Business Combinations&#8221;. </div></div>Total consideration paid was $28.5&#160;million<div style="display:inline;">,</div> which included $2.2&#160;million<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">deposited into an escrow account against which the Company may make claim<div style="letter-spacing: 0px; top: 0px;;display:inline;">s</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>for indemnification<div style="display:inline;">.</div> Under the acquisition method of accounting, the net assets of EMT were recorded as of the acquisition date, at their respective fair values, and consolidated with those of Repligen. The fair value of the net tangible assets acquired is estimated to be approximately $1.5&#160;million, the fair value of the intangible assets acquired is estimated to be $14.4&#160;million, and the residual goodwill is estimated to be approximately $12.6&#160;million. The estimated consideration and preliminary purchase price information has been prepared using a preliminary valuation. The preparation of the valuation required the use of significant assumptions and<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">estimates<div style="letter-spacing: 0px; top: 0px;;display:inline;">. Critical estimates included, but were not&#160;</div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">limited to, future expected cash flows, including projected revenues and expenses, and the applicable discount rates. These estimates were based on assumptions that Repligen believes to be reasonable. However, actual results may differ from these estimates. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Acquisition<div style="display:inline;">-</div>related costs are not included as a component of consideration transferred but are expensed in the periods in which the costs are incurred. The Company incurred $1.0&#160;million and $1.1&#160;million of acquisition related costs during the three and nine months ended September&#160;30, 2020. The transaction costs are included in selling, general and <div style="letter-spacing: 0px; top: 0px;;display:inline;">administrative</div> expenses in the consolidated statements of comprehensive income (loss). </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Fair Value of Net Assets Acquired </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The allocation of purchase price is based on the fair value of assets acquired and liabilities assumed as of the acquisition date, based on the preliminary valuation. As additional information becomes available, the Company may further revise its preliminary purchase price allocation during the remainder of the measurement period (which will not exceed 12 months from July&#160;13, 2020). Any such revisions or changes may be material. The components and allocation of the purchase price consists of the following amounts (amounts in thousands): </div></div>  <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 88%; font-family: 'Times New Roman';"/>
<td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash&#160;and&#160;cash&#160;equivalents</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">69</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts receivable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,057</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Inventory</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">449</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Prepaid expenses and other current assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">7</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fixed assets, net</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">472</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease right of use assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,050</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">11,080</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Developed technology</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,910</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademark and tradename</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">320</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-compete</div> agreements</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">50</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Goodwill</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">12,573</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts payable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(283</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued liabilities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(190</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(211</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability, long-term</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(839</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fair value of net assets acquired</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$</div></div></td>
<td style="vertical-align: bottom;;text-align:right;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">28,514</div></div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">&#160;</div></div></td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Acquired Goodwill </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The goodwill of $12.6&#160;million represents future economic benefits expected to arise from anticipated synergies from the integration of EMT. These synergies include certain cost savings, operating efficiencies and other strategic benefits projected to be achieved as a result of the EMT Acquisition. Substantially all of the goodwill recorded is expected to be deductible for income tax purposes. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Intangible Assets </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table sets forth the components of the identified intangible assets associated with the EMT Acquisition and their estimated useful lives: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 68%;"/>
<td style="width: 9%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 9%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Useful&#160;life</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fair&#160;Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">14&#160;years</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">11,080</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Developed technology</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">11 years</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,910</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademark and tradename</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">14 years</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">320</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-competition</div> agreements</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3 years</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">50</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">14,360</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Revenue, Net Income and Pro Forma Presentation </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company has included the operating results of EMT in its consolidated statements of comprehensive income (loss) since the July&#160;13, 2020 acquisition date. The Company does not consider this acquisition to be material to its consolidated statements of comprehensive income (loss) and therefore has not included pro forma results. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">C Technologies, Inc. </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On May&#160;31, 2019, Repligen acquired C Technologies, pursuant to the terms of a Stock Purchase Agreement (the &#8220;Agreement&#8221;), by and among Repligen, C Technologies and Craig Harrison, an individual and sole stockholder of C Technologies (such acquisition, the &#8220;C Technologies Acquisition&#8221;). </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Acquisition-related costs are not included as a component of consideration transferred but are expensed in the periods in which the costs are incurred. The Company incurred $4.0&#160;million in transaction costs for the nine months ended September&#160;30, 2019. The transaction costs are included in selling, general and administrative expenses in the consolidated statements of comprehensive income (loss). In connection with the transaction, an additional $9.0&#160;million was paid to employees during the second quarter of 2020, based on their continued employment with the Company one year after the date of the close of the C Technologies Acquisition.<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">The</div>&#160;Company has recognized $3.7&#160;million of compensation expense associated<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">with</div> this amount due to employees <div style="letter-spacing: 0px; top: 0px;;display:inline;">during the nine months ended September 30, 2020&#160;</div>and has recognized $9.0&#160;million of compensation expense associated with this amount due since the C Technologies Acquisition. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Fair Value of Net Assets Acquired </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The allocation of purchase price is based on the fair value of assets acquired and liabilities assumed as of the acquisition date, based on the preliminary valuation. The Company obtained this information during due diligence and through other sources. In the months after closing, the Company obtained additional information about these assets and liabilities as it learned more about C Technologies. The Company refined the estimates of fair value to more accurately allocate the purchase price. Only items identified as of the acquisition date were considered for subsequent adjustment. We made appropriate adjustments to the purchase price allocation during the measurement period, which was one year from the acquisition date. The components and allocation of the purchase price consists of the following amounts (amounts in thousands): </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 87%; font-family: 'Times New Roman';"/>
<td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash&#160;and&#160;cash&#160;equivalents</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">3,795</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Restricted cash</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">26,933</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts receivable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,044</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Inventory</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,783</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Prepaid expenses and other current assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">93</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fixed assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">40</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease right of use asset</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,836</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">59,680</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Developed technology</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">28,920</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademark and tradename</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,570</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-competition</div> agreements</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">660</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Goodwill</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">142,314</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred taxes</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">895</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts payable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(436</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued liabilities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(2,767</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued bonus</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(26,928</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(1,709</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(51</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability, long-term</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(3,785</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fair value of net assets acquired</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$</div></div></td>
<td style="vertical-align: bottom;;text-align:right;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">239,887</div></div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">&#160;</div></div></td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Acquired Goodwill </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The goodwill of $142.3&#160;million represents future economic benefits expected to arise from synergies from combining operations and commercial organizations to increase market presence and the extension of existing customer relationships. Substantially all of the goodwill recorded is expected to be deductible for income tax purposes. Pursuant to the Company&#8217;s business combination accounting policy included in Note 2, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Summary of Significant Accounting Policies &#8211; Business Combinations, Goodwill and Intangible Assets,</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8221;</div></div> of the Company&#8217;s Annual Report on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K</div> for the fiscal year ended December&#160;31, 2019, the Company</div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;">recorded goodwill adjustments for the effects on goodwill of changes to net assets acquired during the period that such change is identified, provided that any such change is within the measurement period (up to one year from the date of the acquisition). In March 2020, the Company recorded an adjustment to goodwill of $0.3&#160;million related to additional state income tax liabilities to be paid to the seller, which were incurred from the Company&#8217;s finalized 338(h)(10) tax election.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Revenue, Net Income and Pro Forma Presentation </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company recorded revenue from C Technologies of $9.0&#160;million and $23.3&#160;million for the three and nine months ended September&#160;30, 2020, respectively, and $16.4&#160;million from May&#160;31, 2019, the date of acquisition, to December&#160;31, 2019. The Company recorded a net income from C Technologies&#8217; results of operations of $2.1&#160;million and a net loss of $0.8&#160;million for the three and nine months ended September&#160;30, 2020, respectively, and a net loss of $7.4&#160;million from May&#160;31, 2019 to December&#160;31, 2019. The Company has included the operating results of C Technologies in its consolidated statements of comprehensive income (loss) since the May&#160;31, 2019 acquisition date. The following pro forma financial information presents the combined results of operations of Repligen and C Technologies as if the acquisition had occurred on January&#160;1, 2019 after giving effect to certain pro forma adjustments. The pro forma adjustments reflected herein include only those adjustments that are directly attributable to the C Technologies Acquisition, factually supportable and have a recurring impact. These pro forma adjustments include amortization expense on the acquired identifiable intangible assets, adjustments to stock-based compensation expense for equity compensation issued to C Technologies employees and the income tax effect of the adjustments made. In addition, acquisition-related transaction costs and an accounting adjustment to record inventory at fair value were excluded from pro forma net income in 2019. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Prior to the C Technologies Acquisition, C Technologies did not generate monthly or quarterly financial statements that were prepared in accordance with GAAP. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following pro forma financial information does not reflect any adjustments for anticipated expense savings resulting from the acquisition and is not necessarily indicative of the operating results that would have actually occurred had the transaction been consummated on January&#160;1, 2019 or of future results (amounts in thousands, except per share data): </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 79%;"/>
<td style="width: 13%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Pro forma total revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">209,960</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Pro forma net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">21,012</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Pro forma earnings per share:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Basic</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.45</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Diluted</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.44</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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_BusinessCombinationDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -URI http://asc.fasb.org/topic&amp;trid=2303972<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330472334712">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenue Recognition</a></td>
<td class="text"><div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">4.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue Recognition </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company generates revenue from the sale of bioprocessing products, equipment devices, and related consumables used with these equipment devices to customers in the life science and biopharmaceutical industries. Under ASC 606, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Revenue from Contracts with Customers,&#8221; </div></div>revenue is recognized when, or as, obligations under the terms of a contract are satisfied, which occurs when control of the promised products or services is transferred to customers.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Disaggregation of Revenue </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenues for the three and nine months ended September&#160;30, 2020 and 2019 were as follows: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 66%;"/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three Months Ended<br/> September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended<br/> September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Product revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">94,029</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">69,419</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">257,521</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">200,701</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Royalty and other income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">31</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">26</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">91</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">70</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">94,060</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">69,445</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">257,612</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">200,771</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table>  <div style="text-align: left;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">When disaggregating revenue, the Company considered all of the economic factors that may affect its revenues. Because all of its revenues are from bioprocessing customers, there are no differences in the nature, timing and uncertainty of the Company&#8217;s </div></div></div></div> </div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">revenues and cash flows from any of its product lines. However, given that the Company&#8217;s revenues are generated in different geographic regions, factors such as regulatory 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 revenues are generated from two customers; therefore, economic factors specific to these two customers could impact the nature, timing and uncertainty of the Company&#8217;s revenues and cash flows. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">Disaggregated revenue from contracts with customers by geographic region can be found in Note 15, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Segment Reporting,&#8221;</div></div> below.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue from significant customers that represent 10% or more of the Company&#8217;s total revenue is as follows: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 69%;"/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cytiva (formerly GE Healthcare)</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">23,759</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">MilliporeSigma</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">9,458</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">29,387</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">28,354</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr> </table>  <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Chromatography Products </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company&#8217;s chromatography products include a number of products used in the downstream purification and quality control of biological drugs. The majority of chromatography revenue relates to the OPUS<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">pre-packed</div> chromatography column line. OPUS columns are designed to be disposable following a production campaign. Each OPUS column is delivered <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">pre-packaged</div> with the customer&#8217;s choice of chromatography resin, which is either provided by the Company for the customer or customer supplied. In either scenario, the OPUS column and resin are not interdependent of one another and are therefore considered distinct products that represent separate performance obligations. Chromatography product revenue is generally recognized at a point in time upon transfer of control to the customer.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Filtration Products </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company&#8217;s filtration products generate revenue through the sale of KrosFlo<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> hollow fiber TFF systems,&#160;TangenX<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> flat sheet cassettes, Spectrum<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> hollow fiber filters, membranes and modules, XCell ATF<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> systems and related consumables<div style="letter-spacing: 0px; top: 0px;;display:inline;">.</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;Supporting our systems, we also sell&#160;</div>&#160;ProConnex<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> flow path assemblies<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">and custom silicone-based, single-use flow path assemblies and components from EMT</div>.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company&#8217;s KrosFlo systems are used in the filtration, isolation, purification and concentration of biologics and diagnostic products. TFF is a rapid and efficient method for separation and purification of biomolecules that is widely used in laboratory, process development and process scale applications in biopharmaceutical manufacturing. Sales of large-scale systems generally include components and consumables as well as training and installation services at the request of the customer. Because the initial sale of components and consumables are necessary for the operation of the system, such items are combined with the systems as a single performance obligation. Training and installation services do not significantly modify or customize these systems and therefore represent a distinct performance obligation. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company&#8217;s TangenX flat sheet cassettes (SIUS<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div>, SIUS Gamma<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div> and PRO) are not highly interdependent on one another and are therefore considered distinct products that represent separate performance obligations. Product revenue from the sale of TangenX flat sheet cassettes are generally recognized at a point in time upon transfer of control of the customer. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company&#8217;s other filtration product offerings are not highly interdependent of one another and are therefore considered distinct products that represent separate performance obligations. Revenue on these products is generally recognized at a point in time upon transfer of control to the customer. The Company invoices the customer for the installation and training services in an amount that directly corresponds with the value to the customer of the Company&#8217;s performance to date; therefore, revenue recognized is based on the amount billable to the customer in accordance with the practical expedient under ASC <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">606-10-55-18.</div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company also markets the XCell ATF system, a technologically advanced filtration device used in upstream processes to continuously remove cellular metabolic waste products during the course of a fermentation run, freeing healthy cells to continue producing the biologic drug of interest. XCell ATF systems typically include a filtration system and consumables (i.e., tubing sets, metal stands) as well as training and installation services at the request of the customer. The filtration system and consumables are considered distinct products and therefore represent separate performance obligations. First time purchasers of the systems typically purchase a controller that is shipped with the tubing set(s) and metal stand(s). The controller is not considered distinct as it is a proprietary product that is highly interdependent with the filtration system; therefore, the controller is combined with the filtration system and accounted for as a single performance obligation. The training and installation services do not significantly modify or customize the XCell ATF system and therefore represent a distinct performance obligation. XCell<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">ATF system product revenue related to the filtration system (including the controller if applicable) and consumables is generally</div> </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;">recognized at a point in time upon transfer of control to the customer. XCell ATF system service revenue related to training and installation services is generally recognized over time, as the customer simultaneously receives and consumes the benefits as the Company performs. The Company invoices the customer for the installation and training services in an amount that directly corresponds with the value to the customer of the Company&#8217;s performance to date; therefore, revenue recognized is based on the amount billable to the customer in accordance with the practical expedient under ASC <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">606-10-55-18.</div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">On July&#160;13, 2020, the Company consummated the EMT Acquisition and added EMT&#8217;s silicone-based, <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> components and manifolds to its filtration franchise. These products are key components in <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> filtration and chromatography systems and will help expand its line of <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> ProConnex flow paths, streamline its supply chain for ATF and provide more flexibility as the Company scales and expands its <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> and systems portfolios.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Process Analytics Products </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Process Analytics franchise generates revenue primarily through the sale of the SoloVPE and FlowVPE Slope Spectroscopy systems, consumables and service. These products complement and support the Company&#8217;s existing Filtration, Chromatography and Proteins franchises as they allow end users to make <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">in-line</div> protein concentration measurements in filtration, chromatography and fill-finish applications, designed to allow for real-time process monitoring.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Protein Products </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company&#8217;s Protein franchise generates revenue through the sale of Protein A affinity ligands and growth factors. Protein A ligands are an essential component of Protein A chromatography resins (media) used in the purification of virtually all <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">mAb-based</div> drugs on the market or in development. The Company manufactures multiple forms of Protein A ligands under long-term supply agreements with major life sciences companies, who in turn sell their Protein A chromatography media to end users (biopharmaceutical manufacturers). The Company also manufactures growth factors for sale under long-term supply agreements with certain life sciences companies as well as<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">for<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>direct sales to its customers. Each protein product is considered distinct and therefore represents a separate performance obligation. Protein product revenue is generally recognized at a point in time upon transfer of control to the customer.</div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Other Products </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company&#8217;s other products include operating room products sold to hospitals. Other product revenue is generally recognized at a point in time upon transfer of control to the customer. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Transaction Price Allocated to Future Performance Obligations </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">Remaining performance obligations represents the transaction price of contracts for which work has not been performed or has been partially performed. The Company&#8217;s future performance obligations relate primarily to the installation and training of certain of its systems sold to customers. These performance obligations are completed within one year of receipt of a purchase order from its customers. Accordingly, the Company has elected to not disclose the value of these unsatisfied performance obligations as provided under ASC <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">606-10-50-14.</div></div></div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Contract Balances from Contracts with Customers </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table provides information about receivables and deferred revenues from contracts with customers as of September&#160;30, 2020 (amounts in thousands): </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 88%; font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balances from contracts with customers only:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts receivable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">55,830</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred revenue (included in accrued liabilities in the consolidated balance sheets)</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"><div style="letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="vertical-align: bottom;;text-align:right;">10,141</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue recognized during the nine-month period ended September&#160;30, 2020 relating to:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The beginning deferred revenue balance</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">3,133</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Changes in pricing related to products or services satisfied in previous periods</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"><div style="letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr> </table>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The timing of revenue recognition, billings and cash collections results in the accounts receivables and deferred revenue balances on the Company&#8217;s consolidated balance sheets.&#160;</div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">A contract asset is created when the Company satisfies a performance obligation by transferring a promised good to the customer. Contract assets may represent conditional or unconditional rights to consideration. The right is conditional, and recorded as a contract asset, if the Company must first satisfy another performance obligation in the contract before it is entitled to payment from the customer. Contract assets are transferred to billed receivables once the right becomes unconditional. If the Company has the unconditional right to receive consideration from the customer, the contract asset is accounted for as a billed receivable and presented separately from other contract assets. A right is unconditional if nothing other than the passage of time is required before payment of that consideration is due. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">When consideration is received, or such consideration is unconditionally due, from a customer prior to transferring goods or services to the customer under the terms of a contract, a contract liability is recorded. Contract liabilities are recognized as revenue after control of the products or services is transferred to the customer and all revenue recognition criteria have been met. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Costs to Obtain or Fulfill a Customer Contract </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company&#8217;s sales commission structure is based on achieving revenue targets. The commissions are driven by revenue derived from customer purchase orders which are short term in nature. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">Applying the practical expedient in paragraph <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">340-40-25-4,</div></div></div> the Company recognizes the incremental costs of obtaining contracts as an expense when incurred if the amortization period of the assets that the Company otherwise would have recognized is one year or less. These costs are included in selling, general, and administrative expenses. When shipping and handling costs are incurred after a customer obtains control of the products, the Company accounts for these as costs to fulfill the promise and not as a separate performance obligation.</div> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -URI http://asc.fasb.org/topic&amp;trid=49130388<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476018936">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Losses<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditLossAbstract', window );"><strong>Credit Loss [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditLossFinancialInstrumentTextBlock', window );">Credit Losses</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">5.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Credit Losses </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">Effective January&#160;1, 2020, the Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13,</div> <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Financial Instruments &#8211; Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments,&#8221;</div></div> prospectively. ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13</div> replaces the incurred loss impairment model with an expected credit loss impairment model for financial instruments, including trade receivables. The guidance requires entities to consider forward-looking information to estimate expected credit losses, resulting in earlier recognition of losses for receivables that are current or not yet due. Upon adoption, changes in the allowance were not material for the transition period starting January&#160;1, 2020 through the nine months ended September&#160;30, 2020.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company is exposed to credit losses primarily through sales of products and services. The Company&#8217;s expected loss allowance methodology for accounts receivable is developed using historical collection experience, current and future economic and market conditions and a review of the current status of customers&#8217; trade accounts receivables. Customers are pooled based on sharing specific risk factors, including geographic location. Due to the short-term nature of such receivables, the estimated accounts receivable that may not be collected is based on aging of the accounts receivable balances. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customers are assessed for credit worthiness upfront through a credit review, which includes assessment based on the Company&#8217;s analysis of their financial statements when a credit rating is not available. The Company evaluates contract terms and conditions, country and political risk, and may require prepayment to mitigate risk of loss. Specific allowance amounts are established to record the appropriate provision for customers that have a higher probability of default. The Company monitors changes to the receivables balance on a timely basis, and balances are written off as they are determined to be uncollectable after all collection efforts have been exhausted. Estimates of potential credit losses are used to determine the allowance. It is based on assessment of anticipated payment and all other historical, current and future information that is reasonably available. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The accounts receivable balance on the Company&#8217;s consolidated balance sheet as of September&#160;30, 2020 was $55.8&#160;million, net of $0.6&#160;million of allowances. The following table provides a roll-forward of the allowance for credit losses in 2020 that is deducted from the amortized cost basis of accounts receivable to present the net amount expected to be collected (amounts in thousands):</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 91%; font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 4%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at January&#160;1, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(525</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Current period change</div>&#160;for expected credit losses</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(133</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at March&#160;31, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(658</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Current period change for write-offs</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">37</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Current period change for expected credit losses</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">83</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);"/>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;</td> </tr>
<tr style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(255, 255, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at June&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);;text-align:right;">(538</td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(255, 255, 255);">)&#160;</td> </tr>
<tr style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Current period change for expected credit losses</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">(83</td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);"/>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(255, 255, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);">$</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);;text-align:right;">(621</td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(255, 255, 255);">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);"/>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;</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_CreditLossAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditLossAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditLossFinancialInstrumentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for credit loss on financial instrument measured at amortized cost basis, net investment in lease, off-balance sheet credit exposure, and available-for-sale debt security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 30<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=118955579&amp;loc=SL82922895-210455<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 21<br> -URI http://asc.fasb.org/extlink&amp;oid=119407570&amp;loc=SL82919272-210447<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=119407570&amp;loc=SL82919236-210447<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=119407570&amp;loc=SL82919269-210447<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=118955579&amp;loc=SL82922888-210455<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=119407570&amp;loc=SL82919244-210447<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=119407570&amp;loc=SL82919230-210447<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditLossFinancialInstrumentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330475885656">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock', window );">Goodwill and Intangible Assets</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">6.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Goodwill and Intangible Assets </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Goodwill </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">Goodwill represents the difference between the purchase price and the estimated fair value of identifiable assets acquired and liabilities assumed. Goodwill acquired in a business combination and determined to have an indefinite useful life is not amortized, but instead is tested for impairment at least annually in accordance with ASC 350, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Intangibles &#8211; Goodwill and Other&#8221;</div></div>. The following table represents the change in the carrying value of goodwill for the nine months ended September&#160;30, 2020 (amounts in thousands):</div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 87%; font-family: 'Times New Roman';"/>
<td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance&#160;as&#160;of&#160;December&#160;31,&#160;2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">468,413</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Acquisition of Engineered Molding Technology</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">12,573</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Goodwill adjustment related to C Technologies, Inc.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">293</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cumulative translation adjustment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">764</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance as of September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">482,043</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">During each of the fourth quarters of 2019, 2018 and 2017, the Company completed its annual impairment assessments and concluded that goodwill was not impaired in any of those years. The Company has not identified any &#8220;triggering&#8221; events which indicate an impairment of goodwill in the three and nine months ended September&#160;30, 2020. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Intangible Assets </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible assets with a definitive life are amortized over their useful lives using the straight-line method, and the amortization expense is recorded within cost of product revenue and selling, general and administrative expenses in the Company&#8217;s statements of comprehensive income (loss). Intangible assets and their related useful lives are reviewed at least annually to determine if any adverse conditions exist that would indicate the carrying value of these assets may not be recoverable. More frequent impairment assessments are conducted if certain conditions exist, including a change in the competitive landscape, any internal decisions to pursue new or different technology strategies, a loss of a significant customer, or a significant change in the marketplace, including changes in the prices paid for our products or changes in the size of the market for the Company&#8217;s products. An impairment results if the carrying value of the asset exceeds the estimated fair value of the asset. If the estimate of an intangible asset&#8217;s remaining useful life is changed, the remaining carrying amount of the intangible asset is amortized prospectively over the revised remaining useful life. The Company continues to believe that its intangible assets are recoverable at September&#160;30, 2020. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Indefinite-lived assets are reviewed for impairment at least annually. There has been no impairment of the Company&#8217;s intangible assets for the periods presented. </div></div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible assets, net consisted of the following at September&#160;30, 2020: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 60%;"/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,&#160;2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Gross<br/> Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amortization</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/> Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted<br/> Average<br/> Useful&#160;Life</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;years)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="10" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Finite-lived&#160;intangible&#160;assets:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Technology - developed</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">85,196</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(13,054</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">72,142</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">18</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Patents</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">240</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(240</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">172,325</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(33,861</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">138,464</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">15</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">4,072</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(480</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,592</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">19</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other intangibles</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,750</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(1,263</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">487</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total finite-lived intangible assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">263,583</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(48,898</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">214,685</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">16</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Indefinite-lived intangible asset:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">700</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">700</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total intangible assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">264,283</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(48,898</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">215,385</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible assets consisted of the following at December&#160;31, 2019: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 60%;"/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,&#160;2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Gross<br/> Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amortization</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/> Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted<br/> Average<br/> Useful&#160;Life</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;years)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="10" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Finite-lived&#160;intangible&#160;assets:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Technology - developed</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">82,169</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(9,669</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">72,500</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">19</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Patents</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">240</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(240</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">160,825</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(25,642</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">135,183</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">15</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,752</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(333</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,419</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">20</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other intangibles</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,697</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(947</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">750</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total finite-lived intangible assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">248,683</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(36,831</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">211,852</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">16</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Indefinite-lived intangible asset:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">700</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">700</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total intangible assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">249,383</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(36,831</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">212,552</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr> </table>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Amortization expense for finite-lived intangible assets was $4.0&#160;million and $3.9&#160;million for the three months ended September&#160;30, 2020 and 2019, respectively. Amortization expense was $11.8&#160;million and $9.6&#160;million for the nine months ended September&#160;30, 2020 and 2019, respectively. As of September&#160;30, 2020, the Company expects to record the following amortization expense in future periods (amounts in thousands): </div></div>  <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 85%;"/>
<td style="width: 7%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.5pt;"> <div style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">For the Nine Months Ended September&#160;30,</div></div></div> </td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Estimated<br/> Amortization<br/> Expense</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2020 (remaining three months)</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">3,964</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2021</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">15,855</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2022</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">15,853</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2023</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">15,749</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2024</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">15,298</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2025 and thereafter</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">147,966</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">214,685</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Goodwill And Other Intangible Assets Disclosure abstract</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -URI http://asc.fasb.org/topic&amp;trid=2144416<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330469886104">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock', window );">Consolidated Balance Sheet Detail</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">7.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Consolidated Balance Sheet Detail </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Inventories, net </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Inventories, net consists of the following: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 72%;"/>
<td style="width: 8%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 8%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">As&#160;of</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,<br/> 2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,<br/> 2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Raw materials</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">42,201</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">29,328</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Work-in-process</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6,192</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8,360</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Finished products</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">30,138</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">17,144</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total inventories, net</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">78,531</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">54,832</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table>  <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Property, Plant and Equipment </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Property, plant and equipment consist of the following: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 73%;"/>
<td style="width: 7%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 6%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">As&#160;of</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,<br/> 2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,<br/> 2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Land</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">1,023</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">1,023</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Buildings</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">989</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">764</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Leasehold improvements</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">29,776</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">23,905</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Equipment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">39,094</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">36,257</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Furniture, fixtures and office equipment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8,055</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6,312</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Computer hardware and software</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">14,468</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8,810</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Construction in progress</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6,416</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6,707</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">348</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">56</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total property, plant and equipment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">100,169</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">83,834</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Less - Accumulated depreciation</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(44,814</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(35,379</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total property, plant and equipment, net</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">55,355</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">48,455</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Depreciation expense totaled $2.8&#160;million and $1.8&#160;million for the three months ended September&#160;30, 2020 and 2019, respectively. Depreciation expenses totaled $7.8&#160;million and $5.2&#160;million for the nine months ended September&#160;30, 2020 and 2019, respectively. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Accrued Liabilities </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued liabilities consist of the following: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 72%;"/>
<td style="width: 8%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 8%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">As&#160;of</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,<br/> 2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,<br/> 2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Employee compensation</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">14,652</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">19,850</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Taxes</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,759</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,874</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Royalty and license fees</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,000</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">123</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Warranties</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">737</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,500</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Professional fees</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,745</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,081</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">10,141</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">5,005</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,007</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,898</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total accrued liabilities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">32,041</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">33,331</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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_SupplementalBalanceSheetDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for supplemental balance sheet disclosures, including descriptions and amounts for assets, liabilities, and equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -URI http://asc.fasb.org/topic&amp;trid=2122208<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330469561304">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtTextBlock', window );">Convertible Senior Notes</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">8.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Convertible Senior Notes </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">0.375% Convertible Senior Notes due 2024 </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On July&#160;19, 2019, the Company issued $287.5&#160;million aggregate principal amount of 0.375% Convertible Senior Notes due 2024 (&#8220;2019 Notes&#8221;), which includes the underwriters&#8217; exercise in full of an option to purchase an additional $37.5&#160;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 $278.5&#160;million. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The 2019 Notes are senior, unsecured obligations of the Company, and bear interest at a rate of 0.375% per year. Interest is payable semi-annually in arrears on January 15 and July 15 of each year, beginning on January 15, 2020. The 2019 Notes will mature on July 15, 2024, unless earlier repurchased or converted in accordance with their terms. The initial conversion rate for the 2019 Notes is 8.6749 shares of the Company&#8217;s common stock per $1,000 principal amount of 2019 Notes (which is equivalent to an initial conversion price of approximately $115.28 per share). Prior to the close of business on the business day immediately preceding April&#160;15, 2024, the 2019 Notes will be convertible at the option of the holders of 2019 Notes only upon the satisfaction of specified conditions and during certain periods. Thereafter until the close of business on the second scheduled trading day immediately preceding the maturity date, the 2019 Notes will be convertible at the options of the holders of 2019 Notes at any time regardless of these conditions. Conversion of the 2019 Notes will be settled in cash, shares of the Company&#8217;s common stock or a combination thereof, at the Company&#8217;s election. The 2019 Notes are not redeemable by the Company prior to maturity. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Holders of 2019 Notes may require the Company to repurchase their 2019 Notes upon the occurrence of a fundamental change prior to maturity at a repurchase price equal to 100% of the principal amount thereof, plus accrued and unpaid interest to, but excluding, the date of repurchase. In connection with certain corporate events, the Company will, under certain circumstances, increase the conversion rate for holders of 2019 Notes who elect to convert their 2019 Notes in connection with such corporate events. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">As of September&#160;30, 2020, the conditions allowing holders of the 2019 Notes to convert have not been met and therefore the 2019 Notes are not yet convertible and are recorded as a long-term liability in the Company&#8217;s consolidated balance sheet at September&#160;30, 2020. No 2019 Notes were converted by the holders of such notes in the third quarter of 2020. In the event the closing price conditions are met in the fourth quarter of 2020 or a future fiscal quarter, the 2019 Notes will be convertible at a holder&#8217;s option during the immediately following fiscal quarter. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company accounts for the 2019 Notes as separate liability and equity components. We determined the carrying amount of the liability component as the present value of its cash flows using a discount rate of 4.5% based on comparative convertible transactions for similar companies. The proceeds allocated to the debt conversion feature were $52.1&#160;million. This amount was calculated by deducting the carrying value of the liability component from the principal amount of the 2019 Notes as a whole. The difference represents a debt discount that is amortized to interest expense on the Company&#8217;s consolidated statement of comprehensive income (loss) over the term of the 2019 Notes using the effective interest rate method. The Company will assess the equity classification of the cash conversion feature quarterly, and it is not <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">re-measured</div> as long as it continues to meet the conditions for equity classification.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company allocates transaction costs related to the issuance of the 2019 Notes to the liability and equity components using the same proportions as the initial carrying value of the 2019 Notes. Transaction costs related to the liability component were $7.4&#160;million and are being amortized to interest expense using the effective interest method over the term of the 2019 Notes. Transaction costs attributable to the equity component were $1.6&#160;million and are netted with the equity component of the 2019 Notes in stockholders&#8217; equity of the Company&#8217;s consolidated balance sheet at September&#160;30, 2020. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The net carrying value of the liability component of the 2019 Notes is as follows: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto;border: 0px currentcolor;width: 76%;font-family: 'Times New Roman';font-size: 10pt;border-collapse: collapse;border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 73%;"/>
<td style="width: 6%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">As&#160;of</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,<br/> 2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,<br/> 2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">0.375%&#160;convertible&#160;senior&#160;notes&#160;due&#160;2024:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Principal amount</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">287,500</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">287,500</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Less: unamortized debt discount</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(40,764</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(47,921</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Less: unamortized debt issuance costs</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(5,794</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(6,812</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total debt</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">240,942</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">232,767</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Less: current portion</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net carrying amount</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">240,942</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">232,767</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table>  <div style="font-family: Times New Roman;font-size: 10pt;margin-top: 12pt;margin-bottom: 0pt;margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Interest expense recognized on the 2019 Notes for the three months ended September&#160;30, 2020 was $0.3&#160;million, $2.4&#160;million and $0.3&#160;million for the contractual coupon interest, the accretion of the debt discount and the amortization of the debt issuance costs, respectively. Interest expense recognized on the 2019 Notes for the nine months ended September&#160;30, 2020 was $0.8&#160;million, $7.2&#160;million and $1.0&#160;million for the contractual coupon interest, the accretion of the debt discount and the amortization of the debt issuance costs, respectively. The effective interest rate on the 2019 Notes is 5.1%, which included the interest on the </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2019 Notes, amortization of the debt discount and debt issuance costs. As of September&#160;30, 2020, the carrying value of the 2019 Notes was $240.9&#160;million and the fair value of the principal was $416.0&#160;million.&#160;The fair value of the 2019 Notes was determined based on the most recent trade activity of the 2019 Notes as of September&#160;30, 2020. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Conversion of the 2.125% Convertible Senior Notes due 2021 </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company utilized a portion of the proceeds from the issuance of the 2019 Notes to settle its outstanding 2.125% Convertible Senior Notes due 2021 (the &#8220;2016 Notes&#8221;) during the third quarter of 2019. On July&#160;16, 2019, the Company entered into separate privately negotiated agreements with certain holders of the 2016 Notes to exchange an aggregate of $92.0&#160;million principal aggregate amount of the 2016 Notes for shares of the Company&#8217;s common stock, together with cash, in private placement transactions (the &#8220;Note Exchanges&#8221;). On July&#160;19, 2019 and July&#160;22, 2019, the Company used approximately $92.3&#160;million (including $0.3&#160;million of accrued interest) and 1,850,155 shares of its common stock valued at $161.0&#160;million to settle the Note Exchanges for total consideration of $253.3&#160;million, of which $163.6&#160;million was allocated to reacquiring the equity component of the 2016 Notes. The Company allocated the consideration transferred to the liability and equity components using the same proportions as the initial carrying value of the 2016 Notes. The transaction resulted in a loss on extinguishment of debt of $4.6&#160;million in the Company&#8217;s consolidated statements of comprehensive income (loss) for the three and nine months ended September&#160;30, 2019. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On July&#160;19, 2019, the Company issued a Notice of Redemption in respect of the 2016 Notes, which provided that, on September&#160;23, 2019, the Company would redeem all 2016 Notes that had not been converted, repurchased or exchanged prior to such date at a redemption price in cash equal to 100% of the principal amount thereof plus accrued and unpaid interest. On September&#160;23, 2019, the Company used $23.0&#160;million and 466,045 shares of its common stock valued at $37.8&#160;million to settle the remaining 2016 Notes for a total of $60.8&#160;million, of which $38.3&#160;million was allocated to reacquiring the equity component of the 2016 Notes. This transaction resulted in a loss on extinguishment of debt of $1.1&#160;million recorded on the Company&#8217;s consolidated statements of comprehensive income (loss). The total loss for the three and nine months ended September&#160;30, 2019 of $5.7&#160;million represents the difference between the fair value of the liability component of the 2016 Notes and its related carrying value immediately before the exchange. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The fair value of the liability component was calculated using a discounted cash flow technique with an effective interest rate of 3.9%, representing the estimated nonconvertible debt borrowing rate with a maturity as of the measurement date consistent with the 2016 Notes maturity date of June 1, 2021. In addition, in accordance with this guidance, a portion of the fair value of the consideration transferred is allocated to the reacquisition of the equity component, which is the difference between the fair value of the consideration transferred and the fair value of the liability component immediately before the exchange. As a result, on a gross basis, $200.1&#160;million was allocated to the reacquisition of the equity component of the original instrument, which is recorded net of deferred taxes within additional <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">paid-in</div> capital on the Company&#8217;s consolidated balance sheet.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The cash conversion feature of the 2016 Notes required bifurcation from the 2016 Notes and was initially accounted for as an equity instrument classified to stockholders&#8217; equity, as the conversion feature was determined to be clearly and closely related to the Company&#8217;s stock. Based on market data available for publicly traded, senior, unsecured corporate bonds issued by companies in the same industry and asset base and with similar maturity, the Company estimated the implied interest rate, assuming no conversion option. Assumptions used in the estimate represent what market participants would use in pricing the liability component, including market interest rates, credit standing, and yield curves, all of which are defined as Level&#160;2 observable inputs. The estimated implied interest rate was applied to the 2016 Notes, which resulted in a fair value of the liability component of $96.3&#160;million upon issuance, calculated as the present value of implied future payments based on the $115.0&#160;million aggregate principal amount. The equity component of the 2016 Notes was recognized as a debt discount, recorded in additional <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">paid-in</div> capital, and represents the difference between the aggregate principal of the 2016 Notes and the fair value of the 2016 Notes without conversion option on their issuance date.&#160;The debt discount was amortized to interest expense using the effective interest method over five years, or the life of the 2016 Notes.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Interest expense recognized on the 2016 Notes for the three months ended September&#160;30, 2019 was $0.1&#160;million, $0.5&#160;million and $0.1&#160;million for the contractual coupon interest, the accretion of the debt discount and the amortization of the debt issuance costs, respectively. Interest expense recognized on the 2016 Notes for the nine months ended September&#160;30, 2019 was&#160;$1.3&#160;million, $2.4&#160;million and&#160;$0.4 million&#160;for the contractual coupon interest, the accretion of the debt discount and the amortization of the debt issuance costs, respectively. The effective interest rate on the 2016 Notes was 6.6%, which included the interest on the 2016 Notes, amortization of the debt discount and debt issuance costs. </div></div> <div style="font-size: 8pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</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_LongTermDebtTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for long-term debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -URI http://asc.fasb.org/topic&amp;trid=2208564<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330479329656">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock', window );">Stockholders' Equity</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">9.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Stockholders&#8217; Equity </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Public Offerings of Common Stock </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On July&#160;19, 2019, the Company completed a public offering in which 1,587,000 shares of its common stock, including the underwriters&#8217; exercise in full of an option to purchase an additional 207,000 shares, were sold to the public at a price of $87.00 per share (the &#8220;Stock Offering&#8221;). The net proceeds of the Stock Offering, after deducting underwriting discounts and commissions and other estimated offering expenses payable by the Company, were approximately $131.1&#160;million. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On May&#160;3, 2019, the Company completed a public offering in which 3,144,531 shares of its common stock, which includes the underwriters&#8217; exercise in full of an option to purchase up to an additional 410,156 shares, were sold to the public at a price of $64.00 per share. The total proceeds received by the Company from this offering, net of underwriting discounts and commissions and other estimated offering expenses payable by the Company, totaled approximately $189.6&#160;million. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Stock Option and Incentive Plans </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">At the Company&#8217;s 2018 annual meeting of shareholders held on May&#160;16, 2018, the Company&#8217;s shareholders approved the 2018 Stock Option and Incentive Plan (the &#8220;2018 Plan&#8221;). Under the 2018 Plan the number of shares of the Company&#8217;s common stock that are reserved and available for issuance is 2,778,000 plus the number of shares of common stock available for issuance under the Company&#8217;s Amended and Restated 2012 Stock Option and Incentive Plan (the &#8220;2012 Plan&#8221;). The shares of common stock underlying any awards under the 2018 Plan and 2012 Plan (together, the &#8220;Plans&#8221;) that are forfeited, canceled or otherwise terminated (other than by exercise) shall be added back to the shares of stock available for issuance under the 2018 Plan. At September&#160;30, 2020, 2,325,314 shares were available for future grant under the 2018 Plan. </div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Stock-Based Compensation </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">For the three months ended September&#160;30, 2020 and 2019, th<div style="display:inline;">e</div>&#160;Company recorded stock-based compensation expense of $4.2&#160;million and $3.2&#160;million, respectively, for share-based awards granted under the Plans. For the nine months ended September&#160;30, 2020 and 2019, the Company recorded stock-based compensation expense of $12.5&#160;million and $9.5&#160;million, respectively. The following table presents stock-based compensation expense in the Company&#8217;s consolidated statements of comprehensive income (loss): </div></div>  <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 71%;"/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cost of product revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">563</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">375</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">1,421</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">992</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Research and development</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">326</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">351</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,092</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">992</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Selling, general and administrative</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,336</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,449</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">9,979</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">7,475</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total stock-based compensation</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">4,225</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">3,175</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">12,492</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">9,459</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The 2018 Plan allows for the granting of incentive and nonqualified options to purchase shares of common stock, restricted stock and other equity awards. Employee grants under the Plans generally vest over a <span style="-sec-ix-hidden:hidden15372903">thre</span>e to <span style="-sec-ix-hidden:hidden15372906">five-year</span> period, with <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">20%-33%</div> vesting on the first anniversary of the date of grant and the remainder vesting in equal yearly installments thereafter. Nonqualified options issued to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-employee</div> directors&#160;under the Plans generally vest over one year. In the first quarter of 2018, to create a longer-term retention incentive, the Company&#8217;s Compensation Committee granted long-term incentive compensation awards to its Chief Executive Officer consisting of both stock options and restricted stock units (&#8220;RSUs&#8221;) that are subject to time-based vesting over nine years. Options granted under the Plans have a maximum term of ten years from the date of grant and generally, the exercise price of the stock options equals the fair market value of the Company&#8217;s common stock on the date of grant. At September&#160;30, 2020, options to purchase 723,914 shares and 675,567 stock units were outstanding under the Plans.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company uses the Black-Scholes option pricing model to calculate the fair value of stock option awards on the grant date, and the Company uses the value of the common stock as of the grant date to value RSUs. The Company measures stock-based compensation cost at the grant date based on the estimated fair value of the award. 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 issues performance stock units to certain employees that are tied to company and/or individual performance metrics and recognizes expense on performance-based awards over the vesting period based on the probability that the performance metrics will be achieved. The Company recognizes stock-based compensation expense for options that are ultimately expected to vest, and accordingly, such compensation expense has been adjusted for estimated forfeitures. </div></div></div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> </div><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Information regarding option activity for the nine months ended September&#160;30, 2020 under the Plans is summarized below: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 61%; font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 4%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Shares</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">average</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">exercise</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">price</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/> Average<br/> Remaining<br/> Contractual<br/> Term</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;Years)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Aggregate<br/> Intrinsic&#160;Value</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;Thousands)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Options outstanding at December&#160;31, 2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">957,559</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">30.81</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Granted</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">69,698</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">104.61</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Exercised</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(303,343</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">23.37</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Forfeited/expired/cancelled</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;">$</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Options outstanding at September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">723,914</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">41.03</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">7.02</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">77,102</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Options exercisable at September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">339,191</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">31.00</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6.05</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">39,528</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Vested and expected to vest at September&#160;30, 2020<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">(1)</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">693,689</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6.98</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">74,178</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr> </table> <div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px; table-layout: fixed;">
<tr style="page-break-inside: avoid;">
<td style="width: 9%;">&#160;</td>
<td style="width: 4%; vertical-align: top;;text-align:left;">(1)</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;">Represents the number of vested options as of September&#160;30, 2020 plus the number of unvested options expected to vest as of September&#160;30, 2020 based on the unvested outstanding options at September&#160;30, 2020 adjusted for estimated forfeiture rates of 8% for awards granted to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-executive</div> level employees and 3% for awards granted to executive level employees.</div> </td> </tr> </table>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The aggregate intrinsic value in the table above represents the total <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">pre-tax</div> intrinsic value (the difference between the closing price of the common stock on September&#160;30, 2020, the last business day of the third quarter of 2020, of $147.54 per share and the exercise price of each <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">in-the-money</div></div> option) that would have been received by the option holders had all option holders exercised their options on September&#160;30, 2020. The aggregate intrinsic value of stock options exercised during the nine months ended September&#160;30, 2020 and 2019 was $30.7&#160;million and $5.2&#160;million, respectively.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The weighted average grant date fair value of options granted during the nine months ended September&#160;30, 2020 and 2019 was $48.13 and $30.07, respectively. The total fair value of stock options that vested during the nine months ended September&#160;30, 2020 and 2019 was $2.6&#160;million and $2.9&#160;million, respectively. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The fair value of stock units is calculated using the closing price of the Company&#8217;s common stock on the date of grant. Information regarding stock unit activity, which includes activity for restricted stock units and performance stock units, for the nine months ended September&#160;30, 2020 under the Plans is summarized below: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 65%; font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 6%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 6%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Shares</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/> Average<br/> Remaining<br/> Contractual<br/> Term</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in Years)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Aggregate<br/> Intrinsic Value</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;Thousands)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Unvested at December&#160;31, 2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">734,984</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Awarded</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">187,942</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Vested</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(225,204</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Forfeited/expired/cancelled</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(22,155</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Unvested at September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">675,567</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3.39</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">99,673</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Vested and expected to vest at September&#160;30, 2020<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">(1)</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">650,436</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3.20</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">95,965</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr> </table> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px; table-layout: fixed;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%;">&#160;</td>
<td style="width: 5%;vertical-align: top;;text-align:left;">(1)</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;">Represents the number of vested stock units as of September&#160;30, 2020 plus the number of unvested stock units expected to vest as of September&#160;30, 2020 based on the unvested outstanding stock units at September&#160;30, 2020 adjusted for estimated forfeiture rates of 8% for awards granted to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-executive</div> level employees and 3% for awards granted to executive level employees.</div> </td> </tr> </table>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The aggregate intrinsic value in the table above represents the total <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">pre-tax</div> intrinsic value (equal to the closing price of the common stock on September&#160;30, 2020, the last business day of the third quarter of 2020, of $147.54 per share, as stock units do not have an exercise price) that would have been received by the stock unit holders had all holders exercised on September&#160;30, 2020. The aggregate intrinsic value of stock units vested during the nine months ended September&#160;30, 2020 and 2019 was $25.0&#160;million and $15.5&#160;million, respectively.</div>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The weighted average grant date fair value of stock units vested during the nine months ended September&#160;30, 2020 and 2019 was $66.00 and $33.46, respectively. The total fair value of stock units that vested during the nine months ended September&#160;30, 2020 and 2019 was $9.8&#160;million and $7.6&#160;million, respectively. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">As of September&#160;30, 2020, there was $47.0&#160;million of total unrecognized compensation cost related to unvested share-based awards.&#160;This cost is expected to be recognized over a weighted average remaining requisite service period of 3.61 years. The Company expects 1,833,239 unvested options and stock units to vest over the next five years. </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_StockholdersEquityNoteDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -URI http://asc.fasb.org/topic&amp;trid=2208762<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476673816">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">10.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Commitments and Contingencies </div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Licensing and Research Agreements </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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 which 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&#160;30, 2020 and 2019. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In June 2018, the Company secured an agreement with Navigo<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;Proteins</div>&#160;for the exclusive <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">co-development</div> of multiple affinity ligands for which Repligen holds commercialization rights. The Company is manufacturing and has agreed to supply the first of these ligands, <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">NGL-Impact</div><div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">&#174;</div>, exclusively to Purolite Life Sciences (&#8220;Purolite&#8221;), who will pair 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 <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">NGL-Impact</div> and other potential additional affinity ligands that may advance from the Company&#8217;s Navigo collaboration.<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">In September 2020, Repligen and Navigo Proteins successfully completed co-development of an affinity ligand targeting the SARS-CoV-2 spike protein, to be utilized in the purification of COVID-19 vaccines. The Company has proceeded with scaling up and manufacturing&#160;this ligand&#160;and the development and validation of the related affinity chromatography resin, which will be marketed by Repligen.<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>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 $0.2&#160;million and $0.4&#160;million during the three and nine months ended September&#160;30, 2020<div style="letter-spacing: 0px; top: 0px;;display:inline;">, respectively<div style="letter-spacing: 0px; top: 0px;;display:inline;">.</div></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_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -URI http://asc.fasb.org/topic&amp;trid=2127136<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -URI http://asc.fasb.org/topic&amp;trid=2144648<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330469561304">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accumulated Other Comprehensive Loss<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNoteTextBlock', window );">Accumulated Other Comprehensive Loss</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">11.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accumulated Other Comprehensive Loss </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following shows the changes in the components of accumulated other comprehensive loss for the nine months ended September&#160;30, 2020 which consisted of only foreign currency translation adjustments for the periods shown (amounts in thousands): </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 86%;"/>
<td style="width: 6%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Foreign</div></div></td>
<td style="vertical-align: bottom;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Currency</div></div></td>
<td style="vertical-align: bottom;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Translation</div></div></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Adjustment</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance as of December&#160;31, 2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(15,027</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other comprehensive income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">5,304</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance as of September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(9,723</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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_ComprehensiveIncomeNoteTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for comprehensive income, which includes, but is not limited to, 1) the amount of income tax expense or benefit allocated to each component of other comprehensive income, including reclassification adjustments, 2) the reclassification adjustments for each classification of other comprehensive income and 3) the ending accumulated balances for each component of comprehensive income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -URI http://asc.fasb.org/topic&amp;trid=2134417<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNoteTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330469829720">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Taxes</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">12.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Income Taxes </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company&#8217;s effective tax rate for the three and nine months ended<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;September</div>&#160;30, 2020 was 18.0% and 9.5%, compared to 0.7% and 18.3% for the corresponding periods in the prior year. The effective tax rates for the three and nine months ended <div style="letter-spacing: 0px; top: 0px;;display:inline;">September</div>&#160;30, 2020 and 2019 were lower than the U.S. statutory rate of 21% primarily due to windfall benefits on stock option exercises and the vesting of stock units. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company is subject to a territorial tax system under the Tax Cuts and Jobs Act (&#8220;TCJA&#8221;) enacted in December 2017, in which the Company is required to provide for tax on Global Intangible <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Low-Taxed</div> Income (&#8220;GILTI&#8221;) earned by certain foreign subsidiaries. The Company has adopted an accounting policy to provide for the tax expense related to GILTI in the year the tax is incurred as a period expense.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">On March&#160;27, 2020, President Trump signed the $2.2 trillion bipartisan Coronavirus Aid, Relief, and Economic Security (&#8220;CARES&#8221;) Act. The CARES Act, the third congressional bill to address <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">COVID-19,</div> provides for loans and other benefits to businesses, expanded unemployment insurance, direct payments to those with middle-income and below wages, new appropriations funding for healthcare and other priorities, and tax changes, including deferrals of employer payroll tax</div>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">liabilities, coupled with an employee retention tax credit and rollbacks of TCJA limitations on net operating losses (&#8220;NOLs&#8221;) and the Section&#160;163(j) business interest limitation and a TCJA technical correction on qualified improvement property. The Company evaluated the provisions of the CARES Act and no provision had a material effect on the Company&#8217;s financial position or results of operations at September&#160;30, 2020 and the three and nine months then ended.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company&#8217;s tax returns are subject to examination by federal, state and international tax authorities for the following periods: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 85%; font-family: 'Times New Roman';"/>
<td style="width: 4%; vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.5pt;"> <div style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Jurisdiction</div></div></div> </td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fiscal Years<br/> Subject to<br/> Examination</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">United States - federal and state</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-2019</div></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Sweden</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2013-2019</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Germany</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:center;">2019</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Netherlands</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2013-2019</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</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_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -URI http://asc.fasb.org/topic&amp;trid=2144680<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476701896">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Earnings Per Share</a></td>
<td class="text"><div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">13.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Earnings Per Share </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company reports earnings per share in accordance with ASC 260, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Earnings Per Share,&#8221;</div></div> which establishes standards for computing and presenting earnings per share. Basic earnings per share is computed by dividing net income available to common shareholders by the weighted average number of common shares outstanding during the period. Diluted earnings per share is computed by dividing net income available to common shareholders by the weighted-average number of common shares and dilutive common share equivalents then outstanding. Potential common share equivalents consist of restricted stock awards, performance stock units and the incremental common shares issuable upon the exercise of stock options. Under the treasury stock method, unexercised <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">&#8220;in-the-money&#8221;</div></div> stock options and warrants are assumed to be exercised at the beginning of the period or at issuance, if later. The assumed proceeds are then used to purchase common shares at the average market price during the period. In periods when the Company has a net loss, stock awards are excluded from the calculation of earnings per share as their inclusion would have an antidilutive effect.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Basic and diluted weighted average shares outstanding were as follows: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 69%;"/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three Months Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands,&#160;except&#160;per&#160;share&#160;data)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">14,552</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">1,659</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">40,228</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">17,807</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Weighted average shares used in computing net income per share -<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">diluted</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">52,545</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">50,852</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">52,341</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">47,087</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Effect of dilutive shares:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Stock options and restricted stock awards</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">916</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">957</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">951</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">843</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Dilutive effect of unvested performance stock units</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Dilutive potential common shares</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">924</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">957</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">959</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">843</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Weighted average shares used in computing net income per share - diluted</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">53,469</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">51,809</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">53,300</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">47,930</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Earnings per share:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Basic</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.28</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.03</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.77</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.38</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Diluted</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.27</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.03</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.75</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.37</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">At September&#160;30, 2020, there were outstanding options to purchase 723,914 shares of the Company&#8217;s common stock at a weighted average exercise price of $41.03 per share and 675,567 shares of common stock issuable upon the vesting of stock units, which include RSUs and performance stock units. For the three and nine months ended September&#160;30, 2020, 60,202 and 117,160 shares of the Company&#8217;s common stock were excluded from the calculation of diluted earnings per share 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. </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">At September&#160;30, 2019, there were outstanding options to purchase 959,916 shares of the Company&#8217;s common stock at a weighted average exercise price of $30.44 per share and 740,213 shares issuable upon the vesting of stock units. For the three and nine months ended September&#160;30, 2019, 47,705 and 85,503 shares of the Company&#8217;s common stock were excluded from the calculation of diluted earnings per share 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.</div></div>  <div style="text-align: left;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">As provided by the terms of the indenture underlying the </div>2016<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> Notes, the Company had a choice to settl<div style="display:inline;">e</div>&#160;the conversion obligation for the </div>2016<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> Notes in cash, shares or any combination of the two.&#160;During the third quarter of </div>2019<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, the Company settled the remaining </div>2016<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> Notes for a total aggregate principal of $</div>115.0<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;million and </div>2,316,200<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> shares of its common stock. As of March&#160;</div>31<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, </div>2019<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">, the par value of the </div>2016<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> Notes is not included in the calculation of diluted earnings per share, but the dilutive effect of the conversion premium is considered in the calculation of diluted earnings per share using the treasury stock method. The dilutive impact of the </div>2016<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> Notes was based on the difference between the Company&#8217;s current period average stock price and the conversion price of the </div>2016<div style="font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"> Notes, provided there was a premium.</div></div> </div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In July 2019, the Company issued $287.5&#160;million aggregate principal amount of the 2019 Notes. As provided by the terms of the indenture underlying the 2019 Notes, conversion of the 2019 Notes will be settled in cash, shares of the Company&#8217;s common stock or a combination thereof, at the Company&#8217;s election. As of <div style="letter-spacing: 0px; top: 0px;;display:inline;">September</div>&#160;30, 2020, the 2019 Notes were not convertible. The Company currently intends to settle the par value of the 2019 Notes in cash and any excess conversion premium in shares. The Company applies the provisions of ASC 260, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Earnings Per Share&#8221;,</div></div> Subsection <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-45-44,</div></div> to determine the diluted weighted average shares outstanding as it relates to the conversion spread on the 2019 Notes. Accordingly, the par value of the 2019 Notes is not included in the calculation of diluted income per share, but the dilutive effect of the conversion premium is considered in the calculation of diluted net income per share using the treasury stock method. The dilutive impact of the 2019 Notes is based on the difference between the Company&#8217;s current period average stock price and the conversion price of the 2019 Notes, provided there is a premium. Pursuant to this accounting standard, there is no dilution from the accreted principal of the 2019 Notes for the three and nine months ended September&#160;30, 2020.</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_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -URI http://asc.fasb.org/topic&amp;trid=2144383<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330469792104">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsDisclosureTextBlock', window );">Related Party Transactions</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">14.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Related Party Transactions </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Certain facilities leased by Spectrum are owned by Roy Eddleman, the former owner of Spectrum. As of September&#160;30, 2020, Mr.&#160;Eddleman owned greater than 5% of the Company&#8217;s outstanding shares and the Company considers him to be a related party. The lease amounts paid to this shareholder prior to the public offering were negotiated in connection with the Spectrum Acquisition. The Company incurred rent expense totaling $0.1&#160;million and $0.5&#160;million for the three and nine months ended September&#160;30, 2020 related to these leases. </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_RelatedPartyTransactionsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -URI http://asc.fasb.org/topic&amp;trid=2122745<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476059256">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingAbstract', window );"><strong>Segment Reporting [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingDisclosureTextBlock', window );">Segment Reporting</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">15.</div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Segment Reporting </div></div></div> </td> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company views its operations, makes decisions regarding how to allocate resources and manages its business as one reportable segment and one reporting unit. As a result, the financial information disclosed herein represents all of the material financial information related to the Company. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table represents the Company&#8217;s total revenue by geographic area (based on the location of the customer): </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 71%;"/>
<td style="width: 6%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended<br/> September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended<br/> September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue by customers&#8217; geographic locations:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">North America</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">50</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">54</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">48</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">51</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Europe</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">36</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">33</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">38</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">37</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; background-color: rgba(255, 255, 255, 0);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">APAC<div style="letter-spacing: 0px; top: 0px;;display:inline;">/Other</div></div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;">14</td>
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;">13</td>
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;">14</td>
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;">12</td>
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);">%&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">100</td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">100</td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">100</td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">100</td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">%&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);"/>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td> </tr> </table>  <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Concentrations of Credit Risk and Significant Customers </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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&#160;30, 2020 and December&#160;31, 2019, the Company had no investments associated with foreign exchange contracts, options contracts or other foreign hedging arrangements. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">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 <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">write-off</div> 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.</div> <div style="text-align: left;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue from significant customers that represent 10% or more of the Company&#8217;s total revenue is as follows: </div></div> </div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 70%;"/>
<td style="width: 6%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 6%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cytiva (formerly GE Healthcare)</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">12</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">MilliporeSigma</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">14</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">11</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">14</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr> </table>  <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">There were no accounts receivable balances as of September&#160;30, 2020 representing 10% or more of the Company&#8217;s total trade accounts receivable and royalties and other receivable balances. As of December&#160;31, 2019, the accounts receivable balance with Cytiva (formerly GE Healthcare) represented 18% of the Company&#8217;s total trade accounts receivable and royalties and other receivables balances. </div></div> <div style="font-size: 18pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 18pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</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_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -URI http://asc.fasb.org/topic&amp;trid=2134510<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330469714584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Subsequent Events<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">Subsequent Events</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%; vertical-align: top;;text-align:left;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">16.</div></div></div></div></td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Subsequent Events </div></div></div></div></div> </td> </tr> </table> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Acquisition of <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-Metallic</div> Solutions, Inc. </div></div></div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">On October&#160;15, 2020, the Company entered into a Stock Purchase Agreement with <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-Metallic</div> Solutions, Inc. (&#8220;NMS&#8221;), a Massachusetts corporation, and William Mallone&#233; and Derek Masser, the legal and beneficial owners of NMS, to purchase NMS, which transaction subsequently closed on October&#160;20, 2020 (the &#8220;NMS Acquisition&#8221;). </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">NMS, which is headquartered in Auburn, Massachusetts, is a manufacturer of fabricated plastics, custom containers, and related assemblies and components used in the manufacturing of biologic drugs. NMS&#8217;s products will complement and expand Repligen&#8217;s <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">single-use</div> product offerings. </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">The Company will account for the NMS Acquisition as a purchase of a 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 NMS Acquisition will be included in the Annual Report on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K</div> for the period ended December&#160;31, 2020. As disclosed in the Quarterly Report on Form 10-Q for the period ended June 30, 2020, the Company voluntarily adopted the amendments to financial disclosure requirements around the significance tests in the &#8220;significant subsidiaries&#8221; definition in Rule 1-02(w), Securities Act Rule 405, and Exchange Act Rule 12b-2. As a result, the Company determined that NMS is not a significant subsidiary and therefore no separate financial statements are required. </div></div></div> <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Proposed Acquisition of ARTeSYN Biosolutions </div></div></div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">On October 27, 2020, the Company executed an Equity and Asset Purchase Agreement (&#8220;Purchase Agreement&#8221;) with ARTeSYN Biosolutions Holdings Ireland Limited, a company organized under the laws of Ireland (&#8220;ARTeSYN&#8221;), Third Creek Holdings, LLC, a Nevada limited liability company, Alphinity, LLC, a Nevada limited liability company (&#8220;Alphinity&#8221;, and together with Third Creek Holdings, LLC the &#8220;Sellers&#8221;), and Michael Gagne, solely in his capacity as the representative of the Sellers, pursuant to which the Company will acquire (i) all of the outstanding equity securities of ARTeSYN and (ii) certain assets from Alphinity related to the business of ARTeSYN (collectively, the &#8220;ARTeSYN Acquisition&#8221;) for approximately $200 million, comprised of approximately $130 million in cash to Third Creek and Alphinity and approximately $70 million in Repligen common stock to Third Creek. Subject to certain closing conditions, including the expiration and termination of the waiting period under the Hart-Scott Rodino Antitrust Improvements Act of 1976, as amended, the transaction is expected to close in the fourth quarter of 2020. </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">ARTeSYN, headquartered in Waterford, Ireland, is a biosystems innovator that has had success with its single-use chromatography and filtration systems, which are considered the gold standard in downstream bioprocessing due to their performance, automation and low hold-up volumes. The proposed ARTeSYN Acquisition, combined with the recent acquisitions of EMT and NMS, further establishes Repligen as a premier player in single-use systems and associated integrated flow path assemblies. ARTeSYN has established downstream processing leadership with a suite of state of the art single-use systems for chromatography, filtration, continuous manufacturing and media/buffer prep workflows. In addition, the Company has integrated unique flow path assemblies utilizing EMT&#8217;s silicone extrusion and molding technology, to deliver highly differentiated, low hold-up volume systems that minimize product loss during processing. </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company will account for the ARTeSYN Acquisition as a purchase of a business under ASC 805. Under the acquisition method of accounting, the net assets of ARTeSYN will be recorded as of the acquisition date, at their respective fair values, and consolidated with those of the Company. The Company has engaged a third-party valuation firm to assist with the valuation of the business acquired, which is expected to be completed in the fourth quarter of 2020. The preparation of the valuation requires the use of significant assumptions and estimates. Critical estimates will include, but are not limited to, future expected cash flows, including projected revenues and expenses, and the applicable discount rates. Actual results may differ from these estimates. </div></div></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_SubsequentEventsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -URI http://asc.fasb.org/topic&amp;trid=2122774<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330471129400">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock', window );">Basis of presentation</a></td>
<td class="text"><div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Basis of Presentation </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The consolidated financial statements included herein have been prepared by Repligen Corporation (the &#8220;Company&#8221;, &#8220;Repligen&#8221; or &#8220;we&#8221;) in accordance with generally accepted accounting principles in the United States (&#8220;GAAP&#8221;) and pursuant to the rules and regulations of the Securities and Exchange Commission (&#8220;SEC&#8221;), for Quarterly Reports on Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-Q</div> and Article 10 of Regulation <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">S-X</div> and do not include all of the information and footnote disclosures required by GAAP. These 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 <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K</div> (&#8220;Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K&#8221;)</div> for the fiscal year ended December&#160;31, 2019.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">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 period. Actual results could differ from those estimates. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The consolidated financial statements include the accounts of the Company and its wholly-owned subsidiaries, Repligen Sweden AB, Repligen GmbH, Spectrum LifeSciences, LLC and its subsidiaries (&#8220;Spectrum&#8221;), C Technologies, Inc. (&#8220;C Technologies&#8221;), Engineered Molding Technology (&#8220;EMT&#8221;) and Repligen Singapore Pte. Ltd. All significant intercompany accounts and transactions have been eliminated in consolidation. </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">The Company made no material changes in the application of<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;its</div>&#160;significant accounting policies that were disclosed in its&#160;Form <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">10-K.</div> In the opinion of management, the accompanying unaudited consolidated financial statements include all adjustments, consisting of only normal, recurring adjustments necessary for a fair presentation of the financial position, results of operations and cash flows. The results of operations for the interim periods presented are not necessarily indicative of results to be expected for the entire year.</div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock', window );">Risks and Uncertainties</a></td>
<td class="text"><div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Risks and Uncertainties </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">The ultimate impact that the current pandemic of the novel coronavirus (&#8220;COVID-19&#8221;), may have on the Company and its customers, employees, suppliers, vendors, business partners and distribution channels is currently unknown. The Company is closely monitoring the impact of this evolving situation on all aspects of its business. While COVID-19 did not materially affect the Company&#8217;s financial results and business operations in the Company&#8217;s three and nine months ended September 30, 2020, the Company is unable to predict the impact that COVID-19 may have on its financial position and operations moving forward due to numerous uncertainties. These estimates may change as new events occur and additional information is obtained, and actual results could differ materially from these estimates under different assumptions or conditions. The Company will continue to assess the evolving impact of COVID-19 and will make adjustments to its operations as necessary.&#160;</div></div></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">Recent Accounting Standards Updates</a></td>
<td class="text"><div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-weight:bold;display:inline;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Recent Accounting Standards Updates </div></div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">We consider the applicability and impact of all Accounting Standards Updates on the Company&#8217;s consolidated financial statements. Updates not listed below were assessed and determined to be either not applicable or are expected to have minimal impact on the Company&#8217;s consolidated financial position or results of operations. Recently issued Accounting Standards Updates that we feel may be applicable to the Company are as follows: </div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Recently Issued Accounting Standard Updates &#8211; Adopted During the Period </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In August 2018, the Financial Accounting Standards Board (&#8220;FASB&#8221;) issued Accounting Standards Update No. (&#8220;ASU&#8221;) <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13,</div> <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Fair Value Measurement (Topic 820): Disclosure Framework &#8211; Changes to the Disclosure Requirements for Fair Value Measurement.&#8221; </div></div>ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> includes amendments that aim to improve the effectiveness of fair value measurement disclosures. The amendments in this guidance modify the disclosure requirements on fair value measurements based on the concepts in FASB Concepts Statement, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Conceptual Framework for Financial Reporting - Chapter 8: Notes to Financial Statements</div></div>,<div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8221;</div></div> including the consideration of costs and benefits. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> on January&#160;1, 2020. The adoption did not have a material impact on the Company&#8217;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;">In August 2018, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-15,</div> <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Intangibles &#8211; Goodwill and Other &#8211; <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Internal-Use</div> Software (Subtopic <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">350-40):</div> Customer&#8217;s Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement That Is a Service Contract.&#8221; </div></div>ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-15</div> aligns the requirements for capitalizing implementation costs incurred in a hosting arrangement that is a service contract with the requirements for capitalizing implementation costs incurred to develop or obtain <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">internal-use</div> software (and hosting arrangements that include an <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">internal-use</div> software license). The guidance also requires the entity to expense the capitalized implementation costs of a hosting arrangement that is a service contract over the term of the hosting arrangement, which includes reasonably certain renewals. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> on January&#160;1, 2020. The adoption did not have a material impact on the Company&#8217;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In June 2016, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13,</div> &#8220;<div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Financial Instruments-Credit Losses (Topic 326).&#8221;</div></div> ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13</div> significantly changes how entities will account for credit losses for most financial assets and certain other instruments that are not measured at fair value through net income. ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13</div> replaces the existing incurred loss model with an expected credit loss model that requires entities to estimate an expected lifetime credit loss on most financial assets and certain other instruments, including short-term trade receivables and contract assets, and expands disclosure requirements for credit quality of financial assets. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13</div> on January&#160;1, 2020. The Company assessed all potential impacts that the adoption of this guidance has on its consolidated financial statements. Based on the composition of the Company&#8217;s investment portfolio, accounts receivable, current market conditions and historical credit loss activity, the adoption of ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-13</div> by the Company did not have a material impact on its consolidated financial position, results of operations or cash flows as of and for the three and nine months ended September&#160;30, 2020. The Company continues to monitor processes and controls for indications of an adjustment for future economic conditions at quarterly and annual reporting periods. See Note 5, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Credit Losses,&#8221; </div></div>below for more information on the Company&#8217;s adoption of ASC 326.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In November 2018, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-18,</div> <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Collaborative Arrangements (Topic 808): Clarifying the Interaction between Topic 808 and Topic 606.&#8221; </div></div>ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-18</div> clarifies the interaction between Topic 808, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Collaborative Arrangements,&#8221; </div></div>and Topic 606, <div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8220;Revenue from Contracts with Customers,&#8221; </div></div>by making targeted improvements to GAAP for collaborative arrangements and providing guidance on whether certain transactions between collaborative arrangement participants should be accounted for with revenue under Topic 606. This includes improving comparability in the presentation of revenue for certain transactions between collaborative arrangement participants by allowing presentation of the units of account in collaborative arrangements that are within the scope of Topic 606 together with revenue accounted for under Topic 606. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> on January&#160;1, 2020. The adoption did not have a material impact on the Company&#8217;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In December 2019, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2019-12,</div> &#8220;<div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Income Taxes (Topic 740) &#8211; Simplifying the Accounting for Income Taxes.&#8221; </div></div>ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2019-12</div> simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740, including, but not limited to, the exception to the incremental approach for intraperiod tax allocation when there is a loss from continuing operations and income or a gain from other items, the exceptions related to the recognition of a deferred tax liability related to an equity method investment and the exception to methodology for calculating income taxes in an interim period when a <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">year-to-date</div></div> loss exceeds the anticipated loss for the year. The Company adopted ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2018-13</div> on January&#160;1, 2020. The adoption did not have a material impact on the Company&#8217;s consolidated financial statements as of and for the three and nine months ended September&#160;30, 2020.</div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 18pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Recently Issued Accounting Standard Updates &#8211; Not Yet Adopted </div></div></div> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;">In August 2020, the FASB issued ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06,</div> &#8220;<div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">Debt - Debt with Conversion and Other Options (Subtopic <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">470-20)</div> and Derivatives and Hedging - Contracts in Entity</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8217;</div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">s Own Equity (Subtopic <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">815-40).</div></div></div><div style="font-style: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-style:italic;display:inline;">&#8221;</div></div> ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06</div> simplifies the accounting for convertible debt instruments and convertible preferred stock by reducing the number of accounting models and the number of embedded conversion features that could be recognized separately from the primary contract. ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06</div> also enhances transparency and improves disclosures for convertible instruments and earnings per share guidance. ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06</div> is effective for annual reporting periods beginning after December&#160;15, 2021, including interim periods within those fiscal years. Early adoption is permitted, but no earlier than fiscal years beginning after December&#160;15, 2020. This update permits the use of either the modified retrospective or fully retrospective method of transition. The Company is currently evaluating the timing and impact of the adoption of ASU <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2020-06</div> on the Company&#8217;s consolidated financial statements.</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_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Risks and Uncertainties in Entities Business [Policy Text Block]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock</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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI http://asc.fasb.org/topic&amp;trid=2122369<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476000104">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2020</div></th></tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember', window );">Engineered Molding Technology LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock', window );">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed</a></td>
<td class="text">The components and allocation of the purchase price consists of the following amounts (amounts in thousands): <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 88%; font-family: 'Times New Roman';"/>
<td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash&#160;and&#160;cash&#160;equivalents</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">69</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts receivable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,057</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Inventory</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">449</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Prepaid expenses and other current assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">7</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fixed assets, net</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">472</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease right of use assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,050</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">11,080</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Developed technology</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,910</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademark and tradename</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">320</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-compete</div> agreements</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">50</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Goodwill</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">12,573</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts payable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(283</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued liabilities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(190</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(211</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability, long-term</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(839</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fair value of net assets acquired</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$</div></div></td>
<td style="vertical-align: bottom;;text-align:right;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">28,514</div></div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">&#160;</div></div></td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock', window );">Schedule of Identified Intangible Assets and Estimated Useful Lives</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table sets forth the components of the identified intangible assets associated with the EMT Acquisition and their estimated useful lives: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 68%;"/>
<td style="width: 9%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 9%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Useful&#160;life</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fair&#160;Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">14&#160;years</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">11,080</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Developed technology</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">11 years</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,910</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademark and tradename</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">14 years</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">320</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-competition</div> agreements</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3 years</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">50</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">14,360</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember', window );">C Technologies [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock', window );">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed</a></td>
<td class="text">The components and allocation of the purchase price consists of the following amounts (amounts in thousands):
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 87%; font-family: 'Times New Roman';"/>
<td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cash&#160;and&#160;cash&#160;equivalents</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">3,795</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Restricted cash</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">26,933</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts receivable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,044</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Inventory</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,783</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Prepaid expenses and other current assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">93</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fixed assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">40</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease right of use asset</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,836</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">59,680</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Developed technology</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">28,920</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademark and tradename</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,570</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Non-competition</div> agreements</div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">660</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Goodwill</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">142,314</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred taxes</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">895</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts payable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(436</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued liabilities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(2,767</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued bonus</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(26,928</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(1,709</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(51</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Operating lease liability, long-term</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(3,785</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Fair value of net assets acquired</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">$</div></div></td>
<td style="vertical-align: bottom;;text-align:right;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">239,887</div></div></td>
<td style="vertical-align: bottom; white-space: nowrap;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">&#160;</div></div></td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionProFormaInformationTextBlock', window );">Unaudited Supplemental Pro Forma Information</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following pro forma financial information does not reflect any adjustments for anticipated expense savings resulting from the acquisition and is not necessarily indicative of the operating results that would have actually occurred had the transaction been consummated on January&#160;1, 2019 or of future results (amounts in thousands, except per share data): </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 79%;"/>
<td style="width: 13%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Pro forma total revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">209,960</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Pro forma net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">21,012</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Pro forma earnings per share:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Basic</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.45</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Diluted</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.44</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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_BusinessAcquisitionProFormaInformationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionProFormaInformationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the characteristics, including initial carrying value, residual amount, weighted average useful life, of finite-lived intangible assets acquired during the period by major class. A major class is composed of intangible assets that can be grouped together because they are similar, either by nature or by their use in the operations of the company.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_CTechnologiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>36
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476455160">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Disaggregation of Revenue</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenues for the three and nine months ended September&#160;30, 2020 and 2019 were as follows: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 66%;"/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three Months Ended<br/> September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended<br/> September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Product revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">94,029</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">69,419</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">257,521</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">200,701</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Royalty and other income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">31</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">26</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">91</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">70</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">94,060</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">69,445</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">257,612</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">200,771</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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="top.Show.showAR( this, 'defref_rgen_ScheduleOfRevenueByMajorCustomersTableTextBlock', window );">Revenue from Significant Customers</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue from significant customers that represent 10% or more of the Company&#8217;s total revenue is as follows: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 69%;"/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cytiva (formerly GE Healthcare)</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">23,759</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">MilliporeSigma</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">9,458</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">29,387</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">28,354</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</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="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Summary of Receivables and Deferred Revenue from Contracts with Customers</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table provides information about receivables and deferred revenues from contracts with customers as of September&#160;30, 2020 (amounts in thousands): </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 88%; font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balances from contracts with customers only:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accounts receivable</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">55,830</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred revenue (included in accrued liabilities in the consolidated balance sheets)</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"><div style="letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="vertical-align: bottom;;text-align:right;">10,141</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue recognized during the nine-month period ended September&#160;30, 2020 relating to:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The beginning deferred revenue balance</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">3,133</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Changes in pricing related to products or services satisfied in previous periods</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';"><div style="letter-spacing: 0px; top: 0px;;display:inline;">$</div></td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</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_ScheduleOfRevenueByMajorCustomersTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Schedule Of Revenue By Major Customers [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_ScheduleOfRevenueByMajorCustomersTableTextBlock</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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of contract balances and changes in contract balances.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130551-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476244024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Losses (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditLossAbstract', window );"><strong>Credit Loss [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock', window );">Summary Of Allowance For Credit Losses For Accounts Receivables</a></td>
<td class="text">The following table provides a roll-forward of the allowance for credit losses in 2020 that is deducted from the amortized cost basis of accounts receivable to present the net amount expected to be collected (amounts in thousands):
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 91%; font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 4%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at January&#160;1, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(525</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">Current period change</div>&#160;for expected credit losses</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(133</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at March&#160;31, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(658</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Current period change for write-offs</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">37</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Current period change for expected credit losses</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">83</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);"/>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;</td> </tr>
<tr style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(255, 255, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at June&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);;text-align:right;">(538</td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(255, 255, 255);">)&#160;</td> </tr>
<tr style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Current period change for expected credit losses</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">(83</td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);"/>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(255, 255, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance at September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);">$</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);;text-align:right;">(621</td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(255, 255, 255);">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);"/>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgb(255, 255, 255);">&#160;</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_AccountsReceivableAllowanceForCreditLossTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of allowance for credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=119407570&amp;loc=SL82919249-210447<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditLossAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditLossAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476105352">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfGoodwillTextBlock', window );">Changes in Carrying Value of Goodwill</a></td>
<td class="text">The following table represents the change in the carrying value of goodwill for the nine months ended September&#160;30, 2020 (amounts in thousands):
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 87%; font-family: 'Times New Roman';"/>
<td style="width: 5%; vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance&#160;as&#160;of&#160;December&#160;31,&#160;2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">468,413</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Acquisition of Engineered Molding Technology</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">12,573</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Goodwill adjustment related to C Technologies, Inc.</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">293</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cumulative translation adjustment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">764</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance as of September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">482,043</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock', window );">Intangible assets</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible assets, net consisted of the following at September&#160;30, 2020: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 60%;"/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,&#160;2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Gross<br/> Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amortization</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/> Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted<br/> Average<br/> Useful&#160;Life</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;years)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="10" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Finite-lived&#160;intangible&#160;assets:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Technology - developed</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">85,196</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(13,054</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">72,142</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">18</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Patents</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">240</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(240</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">172,325</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(33,861</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">138,464</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">15</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">4,072</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(480</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,592</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">19</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other intangibles</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,750</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(1,263</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">487</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total finite-lived intangible assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">263,583</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(48,898</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">214,685</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">16</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Indefinite-lived intangible asset:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">700</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">700</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total intangible assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">264,283</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(48,898</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">215,385</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr> </table> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Intangible assets consisted of the following at December&#160;31, 2019: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 60%;"/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 4%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,&#160;2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Gross<br/> Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Accumulated</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Amortization</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Net<br/> Carrying<br/> Value</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted<br/> Average<br/> Useful&#160;Life</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;years)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="10" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Finite-lived&#160;intangible&#160;assets:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Technology - developed</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">82,169</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(9,669</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">72,500</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">19</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Patents</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">240</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(240</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Customer relationships</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">160,825</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(25,642</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">135,183</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">15</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,752</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(333</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,419</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">20</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other intangibles</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,697</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(947</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">750</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total finite-lived intangible assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">248,683</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(36,831</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">211,852</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">16</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Indefinite-lived intangible asset:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Trademarks</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">700</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">700</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total intangible assets</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">249,383</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(36,831</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">212,552</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr> </table> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock', window );">Schedule of Amortization Expense for Amortized Intangible Assets</a></td>
<td class="text">As of September&#160;30, 2020, the Company expects to record the following amortization expense in future periods (amounts in thousands): <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 85%;"/>
<td style="width: 7%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.5pt;"> <div style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">For the Nine Months Ended September&#160;30,</div></div></div> </td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Estimated<br/> Amortization<br/> Expense</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2020 (remaining three months)</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">3,964</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2021</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">15,855</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2022</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">15,853</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2023</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">15,749</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2024</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">15,298</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">2025 and thereafter</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">147,966</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">214,685</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Schedule Of Finite Lived And Indefinite Lived Intangible Assets [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of amortization expense of assets, excluding financial assets, that lack physical substance, having a limited useful life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfGoodwillTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13854-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfGoodwillTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476043368">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Inventories</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Inventories, net consists of the following: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 72%;"/>
<td style="width: 8%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 8%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">As&#160;of</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,<br/> 2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,<br/> 2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Raw materials</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">42,201</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">29,328</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">Work-in-process</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6,192</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8,360</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Finished products</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">30,138</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">17,144</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total inventories, net</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">78,531</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">54,832</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Property, Plant and Equipment</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Property, plant and equipment consist of the following: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 73%;"/>
<td style="width: 7%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 6%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">As&#160;of</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,<br/> 2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,<br/> 2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Land</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">1,023</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">1,023</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Buildings</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">989</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">764</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Leasehold improvements</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">29,776</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">23,905</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Equipment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">39,094</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">36,257</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Furniture, fixtures and office equipment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8,055</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6,312</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Computer hardware and software</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">14,468</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8,810</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Construction in progress</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6,416</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6,707</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">348</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">56</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total property, plant and equipment</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">100,169</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">83,834</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Less - Accumulated depreciation</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(44,814</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(35,379</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total property, plant and equipment, net</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">55,355</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">48,455</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock', window );">Accrued Liabilities</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Accrued liabilities consist of the following: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 76%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 72%;"/>
<td style="width: 8%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 8%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">As&#160;of</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,<br/> 2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,<br/> 2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Employee compensation</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">14,652</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">19,850</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Taxes</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,759</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,874</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Royalty and license fees</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,000</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">123</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Warranties</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">737</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,500</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Professional fees</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,745</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,081</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Deferred revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">10,141</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">5,005</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,007</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,898</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total accrued liabilities</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">32,041</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">33,331</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of accrued liabilities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330469720952">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConvertibleDebtTableTextBlock', window );">Carrying Value of Convertible Senior Notes</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The net carrying value of the liability component of the 2019 Notes is as follows: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto;border: 0px currentcolor;width: 76%;font-family: 'Times New Roman';font-size: 10pt;border-collapse: collapse;border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 73%;"/>
<td style="width: 6%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">As&#160;of</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,<br/> 2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">December&#160;31,<br/> 2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">0.375%&#160;convertible&#160;senior&#160;notes&#160;due&#160;2024:</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Principal amount</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">287,500</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">287,500</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Less: unamortized debt discount</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(40,764</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(47,921</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Less: unamortized debt issuance costs</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(5,794</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(6,812</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total debt</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">240,942</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">232,767</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Less: current portion</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net carrying amount</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">240,942</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">232,767</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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_ConvertibleDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of borrowings which can be exchanged for a specified number of another security at the option of the issuer or the holder. Disclosures include, but are not limited to, principal amount, amortized premium or discount, and amount of liability and equity components.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330475892744">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Stock-Based Compensation Expense</a></td>
<td class="text">The following table presents stock-based compensation expense in the Company&#8217;s consolidated statements of comprehensive income (loss): <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 71%;"/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cost of product revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">563</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">375</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">1,421</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">992</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Research and development</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">326</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">351</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">1,092</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">992</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Selling, general and administrative</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3,336</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2,449</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">9,979</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">7,475</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total stock-based compensation</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">4,225</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">3,175</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">12,492</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">9,459</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Summary of Option Activity</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Information regarding option activity for the nine months ended September&#160;30, 2020 under the Plans is summarized below: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 61%; font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 4%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Shares</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">average</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">exercise</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">price</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/> Average<br/> Remaining<br/> Contractual<br/> Term</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;Years)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Aggregate<br/> Intrinsic&#160;Value</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;Thousands)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Options outstanding at December&#160;31, 2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">957,559</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">30.81</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Granted</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">69,698</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">104.61</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Exercised</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(303,343</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">23.37</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Forfeited/expired/cancelled</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;">$</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Options outstanding at September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">723,914</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">41.03</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">7.02</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">77,102</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Options exercisable at September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">339,191</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">31.00</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6.05</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">39,528</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Vested and expected to vest at September&#160;30, 2020<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">(1)</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">693,689</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">6.98</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">74,178</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr> </table> <div style="width: 11%; line-height: 8pt; margin-top: 0pt; margin-bottom: 2pt; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: solid;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px; table-layout: fixed;">
<tr style="page-break-inside: avoid;">
<td style="width: 9%;">&#160;</td>
<td style="width: 4%; vertical-align: top;;text-align:left;">(1)</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;">Represents the number of vested options as of September&#160;30, 2020 plus the number of unvested options expected to vest as of September&#160;30, 2020 based on the unvested outstanding options at September&#160;30, 2020 adjusted for estimated forfeiture rates of 8% for awards granted to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-executive</div> level employees and 3% for awards granted to executive level employees.</div> </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="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock', window );">Summary of Restricted Stock Unit Activity</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The fair value of stock units is calculated using the closing price of the Company&#8217;s common stock on the date of grant. Information regarding stock unit activity, which includes activity for restricted stock units and performance stock units, for the nine months ended September&#160;30, 2020 under the Plans is summarized below: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 84%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 65%; font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 6%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 5%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="width: 6%; vertical-align: bottom; font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/>
<td style="font-family: &quot;Times New Roman&quot;;"/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Shares</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Weighted-<br/> Average<br/> Remaining<br/> Contractual<br/> Term</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in Years)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Aggregate<br/> Intrinsic Value</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(in&#160;Thousands)</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Unvested at December&#160;31, 2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">734,984</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Awarded</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">187,942</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Vested</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(225,204</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Forfeited/expired/cancelled</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">(22,155</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Unvested at September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">675,567</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3.39</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">99,673</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Vested and expected to vest at September&#160;30, 2020<div style="font-size: 85%; vertical-align: top;;display:inline;;font-size:9.4px">(1)</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">650,436</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">3.20</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">95,965</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr> </table> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="border: 0px currentcolor; width: 100%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-collapse: collapse; border-spacing: 0px; table-layout: fixed;">
<tr style="page-break-inside: avoid;">
<td style="width: 4%;">&#160;</td>
<td style="width: 5%;vertical-align: top;;text-align:left;">(1)</td>
<td style="vertical-align: top;;text-align:left;"> <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; line-height: normal;">Represents the number of vested stock units as of September&#160;30, 2020 plus the number of unvested stock units expected to vest as of September&#160;30, 2020 based on the unvested outstanding stock units at September&#160;30, 2020 adjusted for estimated forfeiture rates of 8% for awards granted to <div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">non-executive</div> level employees and 3% for awards granted to executive level employees.</div> </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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -URI http://asc.fasb.org/extlink&amp;oid=115993241&amp;loc=d3e301413-122809<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5047-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476285608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accumulated Other Comprehensive Loss (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock', window );">Summary of Changes in Accumulated Other Comprehensive Income</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following shows the changes in the components of accumulated other comprehensive loss for the nine months ended September&#160;30, 2020 which consisted of only foreign currency translation adjustments for the periods shown (amounts in thousands): </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 86%;"/>
<td style="width: 6%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Foreign</div></div></td>
<td style="vertical-align: bottom;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom;">&#160;</td>
<td style="vertical-align: bottom;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Currency</div></div></td>
<td style="vertical-align: bottom;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Translation</div></div></td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Adjustment</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance as of December&#160;31, 2019</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(15,027</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Other comprehensive income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">5,304</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Balance as of September&#160;30, 2020</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">(9,723</td>
<td style="vertical-align: bottom; white-space: nowrap;">)&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr> </table> <span></span>
</td>
</tr>
</table>
<div style="display: none;"><table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of accumulated other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669686-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330479677688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SummaryOfIncomeTaxExaminationsTextBlock', window );">Summary of Tax Returns Periods Subject to Examination by Federal, State and International Taxing Authorities</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The Company&#8217;s tax returns are subject to examination by federal, state and international tax authorities for the following periods: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 68%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 85%; font-family: 'Times New Roman';"/>
<td style="width: 4%; vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/>
<td style="font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.5pt;"> <div style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; margin-top: 0pt; margin-bottom: 0pt; border-bottom: 1pt solid rgb(0, 0, 0); display: table-cell; line-height: normal;"><div style="font-weight:bold;display:inline;"><div style="font-family: 'Times New Roman'; font-size: 8pt; letter-spacing: 0px; top: 0px;;display:inline;">Jurisdiction</div></div></div> </td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Fiscal Years<br/> Subject to<br/> Examination</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">United States - federal and state</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;"><div style="white-space: nowrap; letter-spacing: 0px; top: 0px;;display:inline;">2016-2019</div></td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Sweden</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2013-2019</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Germany</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:center;">2019</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Netherlands</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">2013-2019</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</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_SummaryOfIncomeTaxExaminationsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of income tax examinations that an enterprise is currently subject to or that have been completed in the current period typically including a description of the examination, the jurisdiction conducting the examination, the tax year(s) under examination, the likelihood of an unfavorable settlement, the range of possible losses, the liability recorded, the increase or decrease in the liability from the prior period, and any penalties and interest that have been recorded.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32718-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 55<br> -Paragraph 217<br> -URI http://asc.fasb.org/extlink&amp;oid=117331294&amp;loc=d3e36027-109320<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SummaryOfIncomeTaxExaminationsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476613720">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock', window );">Basic and Diluted Weighted Average Shares Outstanding</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Basic and diluted weighted average shares outstanding were as follows: </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 69%;"/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 3%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three Months Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine Months Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="14" style="vertical-align: bottom;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">(Amounts&#160;in&#160;thousands,&#160;except&#160;per&#160;share&#160;data)</div></div></td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Net income</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">14,552</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">1,659</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">40,228</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">17,807</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Weighted average shares used in computing net income per share -<div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div><div style="letter-spacing: 0px; top: 0px;;display:inline;">diluted</div></div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">52,545</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">50,852</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">52,341</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">47,087</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Effect of dilutive shares:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Stock options and restricted stock awards</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">916</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">957</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">951</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">843</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Dilutive effect of unvested performance stock units</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">8</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap;;text-align:right;">&#8212;&#160;&#160;</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 5em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Dilutive potential common shares</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">924</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">957</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">959</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">843</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Weighted average shares used in computing net income per share - diluted</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">53,469</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">51,809</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">53,300</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">47,930</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Earnings per share:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Basic</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.28</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.03</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.77</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.38</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Diluted</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.27</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.03</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.75</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;">$</td>
<td style="vertical-align: bottom;;text-align:right;">0.37</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</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_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<FILENAME>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476050296">
<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, 2020</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock', window );">Percentage of Revenue from Significant Customers</a></td>
<td class="text"><div style="text-align: left;"> <div style="font-family: Times New Roman; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue from significant customers that represent 10% or more of the Company&#8217;s total revenue is as follows: </div></div> </div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 8pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 70%;"/>
<td style="width: 6%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 6%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended</div></div><br/> <div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Cytiva (formerly GE Healthcare)</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">12</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">MilliporeSigma</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">N/A</td>
<td style="vertical-align: bottom; white-space: nowrap; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">14</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">11</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">14</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr> </table> <span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Total Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock', window );">Percentage by Geographic Area or Significant Customers</a></td>
<td class="text"><div style="font-family: Times New Roman; font-size: 10pt; margin-top: 6pt; margin-bottom: 0pt; margin-left: 4%;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">The following table represents the Company&#8217;s total revenue by geographic area (based on the location of the customer): </div></div> <div style="font-size: 12pt; margin-top: 0pt; margin-bottom: 0pt;"><div style="font-size: 12pt; letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div>
<table cellpadding="0" cellspacing="0" style="margin: 0px auto; border: 0px currentcolor; width: 92%; font-family: 'Times New Roman'; font-size: 10pt; border-collapse: collapse; border-spacing: 0px;">
<tr style="font-size: 0px;">
<td style="width: 71%;"/>
<td style="width: 6%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/>
<td style="width: 5%; vertical-align: bottom;"/>
<td/>
<td/>
<td/> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Three&#160;Months&#160;Ended<br/> September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td>
<td colspan="6" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">Nine&#160;Months&#160;Ended<br/> September&#160;30,</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: &quot;Times New Roman&quot;;">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 8pt; page-break-inside: avoid;">
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2020</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td>
<td colspan="2" style="vertical-align: bottom; border-bottom-color: rgb(0, 0, 0); border-bottom-width: 1pt; border-bottom-style: solid;;text-align:center;"><div style="font-weight: normal; letter-spacing: 0px; top: 0px;;display:inline;"><div style="font-weight:bold;display:inline;">2019</div></div></td>
<td style="vertical-align: bottom; padding-bottom: 0.5pt; font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Revenue by customers&#8217; geographic locations:</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">North America</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">50</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">54</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">48</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">51</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid; background-color: rgb(204, 238, 255);">
<td style="vertical-align: top;"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Europe</div></div> </td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">36</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">33</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">38</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;;text-align:right;">37</td>
<td style="vertical-align: bottom; white-space: nowrap;">%&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; background-color: rgba(255, 255, 255, 0);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 3em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">APAC<div style="letter-spacing: 0px; top: 0px;;display:inline;">/Other</div></div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;">14</td>
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;">13</td>
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;">14</td>
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);;text-align:right;">12</td>
<td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 0.375pt; background-color: rgba(255, 255, 255, 0);">%&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: 'Times New Roman';"/>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom; font-family: 'Times New Roman';">&#160;</td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom;"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 1px solid rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: 'Times New Roman';">&#160;</td> </tr>
<tr style="font-family: Times New Roman; font-size: 10pt; page-break-inside: avoid;">
<td style="vertical-align: top; background-color: rgb(204, 238, 255);"> <div style="text-indent: -1em; font-family: 'Times New Roman'; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1em; line-height: normal;"><div style="font-family: 'Times New Roman'; font-size: 10pt; letter-spacing: 0px; top: 0px;;display:inline;">Total revenue</div></div> </td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">100</td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">100</td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">100</td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">%&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgb(204, 238, 255);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgb(204, 238, 255);;text-align:right;">100</td>
<td style="vertical-align: bottom; white-space: nowrap; background-color: rgb(204, 238, 255);">%&#160;</td> </tr>
<tr style="font-size: 1px;">
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);"/>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="vertical-align: bottom; background-color: rgba(255, 255, 255, 0);"> <div style="margin-top: 0pt; margin-bottom: 0pt; border-top: 3px double rgb(0, 0, 0); line-height: normal;"><div style="letter-spacing: 0px; top: 0px;;display:inline;">&#160;</div></div> </td>
<td style="font-family: &quot;Times New Roman&quot;; background-color: rgba(255, 255, 255, 0);">&#160;</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_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the extent of the entity's reliance on its major customers, if revenues from transactions with a single external customer amount to 10 percent or more of entity revenues, including the disclosure of that fact, the total amount of revenues from each such customer, and the identity of the reportable segment or segments reporting the revenues. The entity need not disclose the identity of a major customer or the amount of revenues that each segment reports from that customer. For these purposes, a group of companies known to the entity to be under common control is considered a single customer, and the federal government, a state government, a local government such as a county or municipality, or a foreign government is each considered a single customer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13537-108611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13531-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6327-108592<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6442-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>
</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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330473056312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurement - Additional Information (Detail) - USD ($)<br></strong></div></th>
<th class="th" colspan="1">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, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jul. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 553,302,000<span></span>
</td>
<td class="nump">$ 528,392,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember', window );">Money Market Funds [Member] | Fair Value, Inputs, Level 1 [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="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 395,600,000<span></span>
</td>
<td class="nump">$ 415,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember', 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="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="nump">$ 287,500,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDate', window );">Notes, due date</a></td>
<td class="text">Jul. 15,  2024<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFrequencyOfPeriodicPayment', window );">Notes, frequency of periodic payment</a></td>
<td class="text">semi-annually<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total convertible senior notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">240,900,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtFairValue', window );">Fair value of convertible senior notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 416,000,000.0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Senior convertible notes</a></td>
<td class="nump">0.375%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.375%<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_SummaryOfSignificantAccountingPoliciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Summary Of Significant Accounting Policies [Line Items]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3044-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face (par) amount of debt instrument at time of issuance.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28551-108399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_DebtInstrumentFrequencyOfPeriodicPayment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Description of the frequency of periodic payments (monthly, quarterly, annual).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=75038535&amp;loc=d3e64711-112823<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFrequencyOfPeriodicPayment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentMaturityDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Date when the debt instrument is scheduled to be fully repaid, in CCYY-MM-DD format.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=109500613&amp;loc=SL6031897-161870<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330472981784">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions - Additional Information (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">7 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>Sep. 30, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jul. 13, 2020</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Business acquisition, goodwill acquired</a></td>
<td class="nump">$ 482,043<span></span>
</td>
<td class="nump">$ 468,413<span></span>
</td>
<td class="nump">$ 482,043<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=us-gaap_TrustForBenefitOfEmployeesMember', window );">Employees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts', window );">Transaction costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold', window );">Compensation Expense, Excluding Cost of Good and Service Sold</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, general and administrative</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed', window );">Transaction costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember', window );">C Technologies</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Business acquisition, goodwill acquired</a></td>
<td class="nump">142,314<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">142,314<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual', window );">Business acquisition, revenue</a></td>
<td class="nump">9,000<span></span>
</td>
<td class="nump">16,400<span></span>
</td>
<td class="nump">23,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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss', window );">Business acquisitions proforma net income</a></td>
<td class="nump">2,100<span></span>
</td>
<td class="nump">$ 7,400<span></span>
</td>
<td class="nump">800<span></span>
</td>
<td class="nump">$ 21,012<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1', window );">Deferred tax liability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">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="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember', window );">C Technologies | Employees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold', window );">Compensation Expense, Excluding Cost of Good and Service Sold</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember', window );">C Technologies | Goodwill [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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue', window );">Intangible Asset Residual Value</a></td>
<td class="nump">142,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">142,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="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember', window );">Engineered Molding Technology LLC [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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Business combination, consideration transferred</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">28,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets', window );">Business acquisition, net tangible assets acquired</a></td>
<td class="nump">1,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationAcquisitionRelatedCosts', window );">Business Combination, Acquisition Related Costs</a></td>
<td class="nump">1,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Fair value of acquired finite lived intangible assets</a></td>
<td class="nump">14,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">14,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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Business acquisition, goodwill acquired</a></td>
<td class="nump">12,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 12,573<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired', window );">Business acquisition, voting interest acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_BusinessCombinationConsiderationIndemnificationEscrow', window );">Business acquisition, Indemnification escrow</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember', window );">Engineered Molding Technology LLC [Member] | Goodwill [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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue', window );">Intangible Asset Residual Value</a></td>
<td class="nump">$ 12,600<span></span>
</td>
<td class="text">&#160;<span></span>
</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>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_BusinessCombinationConsiderationIndemnificationEscrow">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Business Combination Consideration Indemnification Escrow</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_BusinessCombinationConsiderationIndemnificationEscrow</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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Tangible Assets</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets</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_AcquiredFiniteLivedIntangibleAssetResidualValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of voting equity interests acquired at the acquisition date in the business combination.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The pro forma net Income or Loss for the period as if the business combination or combinations had been completed at the beginning of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationAcquisitionRelatedCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 25<br> -Paragraph 23<br> -URI http://asc.fasb.org/extlink&amp;oid=116868678&amp;loc=d3e1043-128460<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationAcquisitionRelatedCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6613-128477<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=35744584&amp;loc=d3e6927-128479<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6578-128477<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in the value of a contingent consideration liability, including, but not limited to, differences arising upon settlement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=35744584&amp;loc=d3e7008-128479<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>This element represents the amount of revenue of the acquiree since the acquisition date included in the consolidated income statement for the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of intangible assets, excluding goodwill, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>For transactions that are recognized separately from the acquisition of assets and assumptions of liabilities in the business combination, such as related to pre-existing relationships with the acquiree, this element represents the disclosure of the amount of acquisition related costs which have been expensed.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for salary, wage, profit sharing; incentive and equity-based compensation; and other employee benefit. Other employee benefit expense includes, but is not limited to, service component of net periodic benefit cost for defined benefit plan. Excludes compensation cost in cost of good and service sold.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(b)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=77989000&amp;loc=SL49117168-202975<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=us-gaap_TrustForBenefitOfEmployeesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=us-gaap_TrustForBenefitOfEmployeesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_FairValueByAssetClassAxis=us-gaap_GoodwillMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByAssetClassAxis=us-gaap_GoodwillMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_EngineeredMoldingTechnologyLlcMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>48
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330472998504">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Acquisitions (Fair Value of Net Assets Acquired) (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Jul. 13, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">$ 482,043<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 468,413<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember', window );">C Technologies</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash and cash equivalents</a></td>
<td class="nump">3,795<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash', window );">Restricted cash</a></td>
<td class="nump">26,933<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="nump">3,044<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventory</a></td>
<td class="nump">3,783<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">93<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Fixed assets</a></td>
<td class="nump">40<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset', window );">Operating lease right of use asset</a></td>
<td class="nump">3,836<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets', window );">Deferred taxes</a></td>
<td class="nump">895<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">142,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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable', window );">Accounts payable</a></td>
<td class="num">(436)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities', window );">Accrued liabilities</a></td>
<td class="num">(2,767)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus', window );">Accrued bonus</a></td>
<td class="num">(26,928)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent', window );">Deferred revenue</a></td>
<td class="num">(1,709)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent', window );">Operating lease liability</a></td>
<td class="num">(51)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent', window );">Operating lease liability, long-term</a></td>
<td class="num">(3,785)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Fair value of net assets acquired</a></td>
<td class="nump">239,887<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember', window );">C Technologies | 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="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="nump">59,680<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember', window );">C Technologies | 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="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="nump">28,920<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember', window );">C Technologies | 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="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="nump">1,570<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember', window );">C Technologies | 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="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="nump">660<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember', window );">Engineered Molding Technology LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash and cash equivalents</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 69<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,057<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventory</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">449<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets', window );">Prepaid expenses and other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Fixed assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">472<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset', window );">Operating lease right of use asset</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,050<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="nump">14,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">$ 12,600<span></span>
</td>
<td class="nump">12,573<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable', window );">Accounts payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(283)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities', window );">Accrued liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(190)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent', window );">Operating lease liability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(211)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent', window );">Operating lease liability, long-term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(839)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Fair value of net assets acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">28,514<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember', window );">Engineered Molding Technology LLC [Member] | 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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,080<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember', window );">Engineered Molding Technology LLC [Member] | 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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,910<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember', window );">Engineered Molding Technology LLC [Member] | 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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">320<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember', window );">Engineered Molding Technology LLC [Member] | 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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Business combination, intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 50<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Accrued Bonus.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus</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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Current Liabilities Accrued Liabilities</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Business combination recognized identifiable assets acquired and liabilities assumed deferred tax liability current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Liability Current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Liability Non Current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Lease Right Of Use Asset.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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_rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of restricted cash, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax asset attributable to deductible temporary differences and carryforwards acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e31917-109318<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of intangible assets, excluding goodwill, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of inventory recognized as of the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI http://asc.fasb.org/extlink&amp;oid=116868840&amp;loc=d3e2207-128464<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of property, plant, and equipment recognized as of the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI http://asc.fasb.org/extlink&amp;oid=116868840&amp;loc=d3e2207-128464<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=77989000&amp;loc=SL49117168-202975<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476640840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions (Estimated Useful Life and Fair Value) (Detail) - Engineered Molding Technology LLC [Member]<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2020 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Fair Value</a></td>
<td class="nump">$ 14,360<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember', window );">Customer Relationships [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">14 years<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Fair Value</a></td>
<td class="nump">$ 11,080<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember', window );">Developed Technology Rights [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">11 years<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Fair Value</a></td>
<td class="nump">$ 2,910<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember', window );">Trademark and tradename [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">14 years<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Fair Value</a></td>
<td class="nump">$ 320<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember', window );">Noncompete Agreements [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Fair Value</a></td>
<td class="nump">$ 50<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of identifiable intangible assets recognized as of the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI http://asc.fasb.org/extlink&amp;oid=116868840&amp;loc=d3e2207-128464<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_EngineeredMoldingTechnologyLlcMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_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>50
<FILENAME>R40.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330475709608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions (Unaudited Supplemental Pro Forma Information) (Detail) - C Technologies [Member] - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">7 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionsProFormaRevenue', window );">Pro forma total 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="nump">$ 209,960<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss', window );">Pro forma net income</a></td>
<td class="nump">$ 2,100<span></span>
</td>
<td class="nump">$ 7,400<span></span>
</td>
<td class="nump">$ 800<span></span>
</td>
<td class="nump">$ 21,012<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic', window );">Basic</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.45<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted', window );">Diluted</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.44<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The pro forma basic net income per share for a period as if the business combination or combinations had been completed at the beginning of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The pro forma diluted net income per share for a period as if the business combination or combinations had been completed at the beginning of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The pro forma net Income or Loss for the period as if the business combination or combinations had been completed at the beginning of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionsProFormaRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The pro forma revenue for a period as if the business combination or combinations had been completed at the beginning of the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionsProFormaRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330471841160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Disaggregation of Product Revenues from Contracts with Customers by Major Product Line (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, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 94,060<span></span>
</td>
<td class="nump">$ 69,445<span></span>
</td>
<td class="nump">$ 257,612<span></span>
</td>
<td class="nump">$ 200,771<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_ProductMember', window );">Product</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">94,029<span></span>
</td>
<td class="nump">69,419<span></span>
</td>
<td class="nump">257,521<span></span>
</td>
<td class="nump">200,701<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_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="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 31<span></span>
</td>
<td class="nump">$ 26<span></span>
</td>
<td class="nump">$ 91<span></span>
</td>
<td class="nump">$ 70<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130545-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130543-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=us-gaap_ProductMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=us-gaap_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>52
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330479359736">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue from Significant Customers (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, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 94,060<span></span>
</td>
<td class="nump">$ 69,445<span></span>
</td>
<td class="nump">$ 257,612<span></span>
</td>
<td class="nump">$ 200,771<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_MajorCustomersAxis=rgen_CytivaMember', window );">Cytiva (formerly GE Healthcare)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">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="nump">23,759<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_MajorCustomersAxis=rgen_MilliporeSigmaMember', window );">MilliporeSigma</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,458<span></span>
</td>
<td class="nump">$ 29,387<span></span>
</td>
<td class="nump">$ 28,354<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130545-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130543-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_MajorCustomersAxis=rgen_CytivaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=rgen_CytivaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_MilliporeSigmaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=rgen_MilliporeSigmaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330475597672">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Receivables and Deferred Revenue from Contracts with Customers (Detail) - USD ($)<br> $ in Thousands</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, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable</a></td>
<td class="nump">$ 55,830<span></span>
</td>
<td class="nump">$ 43,068<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredRevenue', window );">Deferred revenue (included in accrued liabilities in the consolidated balance sheets)</a></td>
<td class="nump">10,141<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract', window );"><strong>Revenue recognized during the nine-month period ended September 30, 2020 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="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">The beginning deferred revenue balance</a></td>
<td class="nump">3,133<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod', window );">Changes in pricing related to products or services satisfied in previous periods</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118952595&amp;loc=d3e4428-111522<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=118952595&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118944033&amp;loc=SL49130531-203044<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118944033&amp;loc=SL49130532-203044<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from performance obligation satisfied or partially satisfied in previous reporting periods. Includes, but is not limited to, change in transaction price.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12A<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL108322424-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>54
<FILENAME>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330475688280">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Credit Losses - Additional Information (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditLossAbstract', window );"><strong>Credit Loss [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable</a></td>
<td class="nump">$ 55,830<span></span>
</td>
<td class="nump">$ 43,068<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Accounts receivable, reserve for doubtful accounts</a></td>
<td class="nump">$ 621<span></span>
</td>
<td class="nump">$ 525<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118952595&amp;loc=d3e4428-111522<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=118952595&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=118936363&amp;loc=d3e5074-111524<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118955202&amp;loc=SL82895884-210446<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditLossAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditLossAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330470979912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Credit Losses - Summary Of Allowance For Credit Losses For Accounts Receivables (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditLossAbstract', window );"><strong>Credit Loss [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivable', window );">Beginning balance</a></td>
<td class="num">$ (538)<span></span>
</td>
<td class="num">$ (658)<span></span>
</td>
<td class="num">$ (525)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs', window );">Current period change for write-offs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">37<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProvisionForDoubtfulAccounts', window );">Current period change for expected credit losses</a></td>
<td class="num">(83)<span></span>
</td>
<td class="nump">83<span></span>
</td>
<td class="num">(133)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivable', window );">Ending balance</a></td>
<td class="num">$ (621)<span></span>
</td>
<td class="num">$ (538)<span></span>
</td>
<td class="num">$ (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_AllowanceForDoubtfulAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=119407570&amp;loc=SL82919249-210447<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=118936363&amp;loc=d3e5074-111524<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=119407570&amp;loc=SL82919249-210447<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118955202&amp;loc=SL82895884-210446<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of direct write-downs of accounts receivable charged against the allowance.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=119407570&amp;loc=SL82919249-210447<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditLossAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditLossAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProvisionForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expense (reversal of expense) for expected credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=119407570&amp;loc=SL82919249-210447<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProvisionForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<FILENAME>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330490628232">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>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, 2020 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance as of December 31, 2019</a></td>
<td class="nump">$ 468,413<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss', window );">Cumulative translation adjustment</a></td>
<td class="nump">764<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance as of September 30, 2020</a></td>
<td class="nump">482,043<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember', window );">C Technologies, 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="top.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="top.Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Goodwill arising from Acquisition</a></td>
<td class="nump">293<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance as of September 30, 2020</a></td>
<td class="nump">142,314<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember', window );">Engineered Molding 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="top.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="top.Show.showAR( this, 'defref_us-gaap_GoodwillAcquiredDuringPeriod', window );">Goodwill arising from Acquisition</a></td>
<td class="nump">12,573<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance as of September 30, 2020</a></td>
<td class="nump">$ 12,600<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=77989000&amp;loc=SL49117168-202975<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAcquiredDuringPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAcquiredDuringPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_BusinessAcquisitionAxis=rgen_CTechnologiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rgen_CTechnologiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_EngineeredMoldingTechnologyLlcMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rgen_EngineeredMoldingTechnologyLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330472924312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangible Assets (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">$ 263,583<span></span>
</td>
<td class="nump">$ 248,683<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsGrossExcludingGoodwill', window );">Gross Carrying Value</a></td>
<td class="nump">264,283<span></span>
</td>
<td class="nump">249,383<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(48,898)<span></span>
</td>
<td class="num">(36,831)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(48,898)<span></span>
</td>
<td class="num">(36,831)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">214,685<span></span>
</td>
<td class="nump">211,852<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Net Carrying Value</a></td>
<td class="nump">$ 215,385<span></span>
</td>
<td class="nump">$ 212,552<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember', 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="top.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="top.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="top.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="top.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="top.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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">85,196<span></span>
</td>
<td class="nump">82,169<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(13,054)<span></span>
</td>
<td class="num">(9,669)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">$ 72,142<span></span>
</td>
<td class="nump">$ 72,500<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">18 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="top.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="top.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="top.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="top.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="top.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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember', window );">Customer relationships</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">$ 172,325<span></span>
</td>
<td class="nump">$ 160,825<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(33,861)<span></span>
</td>
<td class="num">(25,642)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">$ 138,464<span></span>
</td>
<td class="nump">$ 135,183<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember', window );">Trademark</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">$ 4,072<span></span>
</td>
<td class="nump">$ 3,752<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(480)<span></span>
</td>
<td class="num">(333)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">$ 3,592<span></span>
</td>
<td class="nump">$ 3,419<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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">20 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">$ 1,750<span></span>
</td>
<td class="nump">$ 1,697<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(1,263)<span></span>
</td>
<td class="num">(947)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">$ 487<span></span>
</td>
<td class="nump">$ 750<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">3 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indefinite Lived Intangible Assets Accumulated Amortization</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indefinite Lived Intangible Assets Net</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Intangible Assets [Line Items]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Useful life of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 928<br> -SubTopic 340<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6473545&amp;loc=d3e61844-108004<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated amortization of intangible assets, excluding goodwill.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=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_DevelopedTechnologyRightsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_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>58
<FILENAME>R48.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476006488">
<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, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization expense</a></td>
<td class="nump">$ 4.0<span></span>
</td>
<td class="nump">$ 3.9<span></span>
</td>
<td class="nump">$ 11.8<span></span>
</td>
<td class="nump">$ 9.6<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Finite-Lived Intangible Liabilities [Line Items]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330469730040">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Amortization Expense for Amortized Intangible Assets (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear', window );">2020 (remaining three months)</a></td>
<td class="nump">$ 3,964<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2021</a></td>
<td class="nump">15,855<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">2022</a></td>
<td class="nump">15,853<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">2023</a></td>
<td class="nump">15,749<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">2024</a></td>
<td class="nump">15,298<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive', window );">2025 and thereafter</a></td>
<td class="nump">147,966<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">$ 214,685<span></span>
</td>
<td class="nump">$ 211,852<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Finite-Lived Intangible Liabilities [Line Items]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized after the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the remainder of the fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fourth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the third fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the second fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<FILENAME>R50.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330471234680">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Inventories (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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="top.Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsNetOfReserves', window );">Raw materials</a></td>
<td class="nump">$ 42,201<span></span>
</td>
<td class="nump">$ 29,328<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcessNetOfReserves', window );">Work-in-process</a></td>
<td class="nump">6,192<span></span>
</td>
<td class="nump">8,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="top.Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoodsNetOfReserves', window );">Finished products</a></td>
<td class="nump">30,138<span></span>
</td>
<td class="nump">17,144<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Total inventories, net</a></td>
<td class="nump">$ 78,531<span></span>
</td>
<td class="nump">$ 54,832<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6676-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116846819&amp;loc=d3e3927-108312<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>61
<FILENAME>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330487727960">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Property, Plant and Equipment (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Land', window );">Land</a></td>
<td class="nump">$ 1,023<span></span>
</td>
<td class="nump">$ 1,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="top.Show.showAR( this, 'defref_us-gaap_BuildingsAndImprovementsGross', window );">Buildings</a></td>
<td class="nump">989<span></span>
</td>
<td class="nump">764<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeaseholdImprovementsGross', window );">Leasehold improvements</a></td>
<td class="nump">29,776<span></span>
</td>
<td class="nump">23,905<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MachineryAndEquipmentGross', window );">Equipment</a></td>
<td class="nump">39,094<span></span>
</td>
<td class="nump">36,257<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FurnitureAndFixturesGross', window );">Furniture, fixtures and office equipment</a></td>
<td class="nump">8,055<span></span>
</td>
<td class="nump">6,312<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CapitalizedComputerSoftwareGross', window );">Computer hardware and software</a></td>
<td class="nump">14,468<span></span>
</td>
<td class="nump">8,810<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConstructionInProgressGross', window );">Construction in progress</a></td>
<td class="nump">6,416<span></span>
</td>
<td class="nump">6,707<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentOther', window );">Other</a></td>
<td class="nump">348<span></span>
</td>
<td class="nump">56<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Total property, plant and equipment</a></td>
<td class="nump">100,169<span></span>
</td>
<td class="nump">83,834<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Less - Accumulated depreciation</a></td>
<td class="num">(44,814)<span></span>
</td>
<td class="num">(35,379)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Total property, plant and equipment, net</a></td>
<td class="nump">$ 55,355<span></span>
</td>
<td class="nump">$ 48,455<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.14)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BuildingsAndImprovementsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6812-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated amortization of capitalized costs for computer software, including but not limited to, acquired and internally developed computer software.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedComputerSoftwareGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConstructionInProgressGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depletion of real estate held for productive use, excluding land held for sale.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6812-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation of additions or improvements to assets held under a lease arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6812-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6812-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>62
<FILENAME>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330475565720">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Balance Sheet - 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, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">$ 2.8<span></span>
</td>
<td class="nump">$ 1.8<span></span>
</td>
<td class="nump">$ 7.8<span></span>
</td>
<td class="nump">$ 5.2<span></span>
</td>
</tr>
</table>
<div style="display: none;"><table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Depreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330475689224">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Accrued Liabilities (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.showAR( this, 'defref_us-gaap_EmployeeRelatedLiabilitiesCurrent', window );">Employee compensation</a></td>
<td class="nump">$ 14,652<span></span>
</td>
<td class="nump">$ 19,850<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedIncomeTaxesCurrent', window );">Taxes</a></td>
<td class="nump">2,759<span></span>
</td>
<td class="nump">3,874<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedRoyaltiesCurrent', window );">Royalty and license fees</a></td>
<td class="nump">1,000<span></span>
</td>
<td class="nump">123<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualClassifiedCurrent', window );">Warranties</a></td>
<td class="nump">737<span></span>
</td>
<td class="nump">1,500<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedProfessionalFeesCurrent', window );">Professional fees</a></td>
<td class="nump">1,745<span></span>
</td>
<td class="nump">1,081<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredRevenueCurrent', window );">Deferred revenue</a></td>
<td class="nump">10,141<span></span>
</td>
<td class="nump">5,005<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherAccruedLiabilitiesCurrent', window );">Other</a></td>
<td class="nump">1,007<span></span>
</td>
<td class="nump">1,898<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Total accrued liabilities</a></td>
<td class="nump">$ 32,041<span></span>
</td>
<td class="nump">$ 33,331<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Schedule of Accrued Liabilities [Line Items]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(b)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedProfessionalFeesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for professional fees, such as for legal and accounting services received. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6911-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6935-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedProfessionalFeesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedRoyaltiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for royalties. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6911-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6935-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedRoyaltiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeRelatedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6911-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e7018-107765<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6935-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrualClassifiedCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12524-110249<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 25<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=68070138&amp;loc=d3e11281-110244<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualClassifiedCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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>64
<FILENAME>R54.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330399313512">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Convertible Senior Notes - Additional Information (Detail)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="2">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>Jul. 22, 2019 </div>
<div>USD ($) </div>
<div>shares</div>
</th>
<th class="th">
<div>Jul. 19, 2019 </div>
<div>USD ($) </div>
<div>$ / shares</div>
</th>
<th class="th">
<div>Sep. 23, 2019 </div>
<div>USD ($) </div>
<div>shares</div>
</th>
<th class="th">
<div>Sep. 30, 2020 </div>
<div>USD ($) </div>
<div>shares</div>
</th>
<th class="th">
<div>Sep. 30, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jul. 31, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jul. 16, 2019 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromConvertibleDebt', window );">Proceeds from issuance of convertible senior notes, net of costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 278,555,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfDebtDiscountPremium', window );">Accretion of the debt discount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,175,000<span></span>
</td>
<td class="nump">4,863,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtConversionConvertedInstrumentAmount1', window );">Total consideration on conversion</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">198,757,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Loss on extinguishment of debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (5,650,000)<span></span>
</td>
<td class="nump">5,700,000<span></span>
</td>
<td class="num">(5,650,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_CommonStockMember', window );">Common Stock [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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities', window );">Conversion of Convertible Securities Stock Issued | shares | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,316,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Notes issued</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 287,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 287,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Notes, interest rate</a></td>
<td class="text">&#160;<span></span>
</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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromConvertibleDebt', window );">Proceeds from issuance of convertible senior notes, net of costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 278,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentConvertibleConversionRatio1', window );">Notes conversion ratio per $1,000 principal amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8.6749<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentConvertibleConversionPrice1', window );">Notes initial conversion price | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 115.28<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentRedemptionPricePercentage', window );">Notes redemption price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpenseDebtExcludingAmortization', window );">Contractual coupon interest</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">800,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfDebtDiscountPremium', window );">Accretion of the debt discount</a></td>
<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,400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfFinancingCosts', window );">Amortization of the debt issuance costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateEffectivePercentage', window );">Effective interest rate on the Notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.10%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.10%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Notes, carrying value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 240,900,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 240,900,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtFairValue', window );">Fair value of the note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">416,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 416,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_OptionToPurchaseAdditionalDebtFaceAmount', window );">Additional Notes issued</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 37,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_DiscountRate', window );">Discount rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature', window );">Proceeds allocated to the conversion feature</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 52,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent', window );">Transaction costs attributable to liability component</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_ConvertibleNotesTransactionCostsOfEquityComponent', window );">Transaction costs attributable to equity component</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember', window );">2.125% Convertible Senior Notes due 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Notes issued</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">115,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">115,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 92,000,000.0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Notes, interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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.125%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDate', window );">Notes, due date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Jun.  01,  2021<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentRedemptionPricePercentage', window );">Notes redemption price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFairValue', window );">Notes issued, fair value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 96,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 96,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpenseDebtExcludingAmortization', window );">Contractual coupon interest</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfDebtDiscountPremium', window );">Accretion of the debt discount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfFinancingCosts', window );">Amortization of the debt issuance costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateEffectivePercentage', window );">Effective interest rate on the Notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6.60%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6.60%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarlyRepaymentOfSeniorDebt', window );">Repayment Of Senior Debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 92,300,000<span></span>
</td>
<td class="nump">$ 23,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentIncreaseAccruedInterest', window );">Accrued interest</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtConversionConvertedInstrumentAmount1', window );">Total consideration on conversion</a></td>
<td class="nump">$ 253,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_DebtInstrumentFaceAmountRemaining', window );">Face amount of remaining convertible debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">60,800,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent', window );">Equity component of converted debt</a></td>
<td class="nump">$ 163,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">38,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Loss on extinguishment of debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember', window );">2.125% Convertible Senior Notes due 2021 | Common Stock [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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities', window );">Conversion of Convertible Securities Stock Issued | shares | shares</a></td>
<td class="nump">1,850,155<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">466,045<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities', window );">Conversion of Convertible Securities Stock Issued | value</a></td>
<td class="nump">$ 161,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 37,800,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember', window );">2.125% Non Convertible Senior Notes due 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateEffectivePercentage', window );">Effective interest rate on the Notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3.90%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3.90%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent', window );">Equity component of converted debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 200,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 200,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_ConvertibleNotesTransactionCostsOfEquityComponent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Convertible notes transaction costs of equity component.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_ConvertibleNotesTransactionCostsOfEquityComponent</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_ConvertibleNotesTransactionCostsOfLiabilityComponent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Convertible notes transaction costs of liability component.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent</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_DebtInstrumentFaceAmountRemaining">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Debt instrument face amount remaining</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_DebtInstrumentFaceAmountRemaining</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_DiscountRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Discount rate.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_DiscountRate</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>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_OptionToPurchaseAdditionalDebtFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Option to purchase additional debt face amount.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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_AmortizationOfDebtDiscountPremium">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense included in interest expense to amortize debt discount and premium associated with the related debt instruments. Excludes amortization of financing costs. Alternate captions include noncash interest expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1A<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28541-108399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.8)<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfDebtDiscountPremium</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense attributable to debt issuance costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_DebtConversionConvertedInstrumentAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The value of the financial instrument(s) that the original debt is being converted into in a noncash (or part noncash) transaction. "Part noncash" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4304-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4332-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtConversionConvertedInstrumentAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of a favorable spread to a debt holder between the amount of debt being converted and the value of the securities received upon conversion. This is an embedded conversion feature of convertible debt issued that is in-the-money at the commitment date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21538-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The carrying amount of the equity component of convertible debt which may be settled in cash upon conversion.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109500613&amp;loc=SL6031897-161870<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentConvertibleConversionPrice1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The price per share of the conversion feature embedded in the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109500613&amp;loc=SL6031898-161870<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentConvertibleConversionPrice1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentConvertibleConversionRatio1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Ratio applied to the conversion of debt instrument into equity with equity shares divided by debt principal amount.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21521-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21506-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentConvertibleConversionRatio1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face (par) amount of debt instrument at time of issuance.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28551-108399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_DebtInstrumentFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fair value portion of debt instrument payable, including, but not limited to, notes payable and loans payable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13433-108611<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentIncreaseAccruedInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Increase for accrued, but unpaid interest on the debt instrument for the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(f))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentIncreaseAccruedInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateEffectivePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109500613&amp;loc=SL6036836-161870<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28551-108399<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateEffectivePercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateTerms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Date when the debt instrument is scheduled to be fully repaid, in CCYY-MM-DD format.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_DebtInstrumentRedemptionPricePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage price of original principal amount of debt at which debt can be redeemed by the issuer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph e<br> -URI http://asc.fasb.org/extlink&amp;oid=75038535&amp;loc=d3e64711-112823<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentRedemptionPricePercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarlyRepaymentOfSeniorDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for the extinguishment of long-term borrowing, with the highest claim on the assets of the entity in case of bankruptcy or liquidation, before its maturity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarlyRepaymentOfSeniorDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12355-112629<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12317-112629<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=109500613&amp;loc=SL6031897-161870<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued during the period as a result of the conversion of convertible securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-30)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21475-112644<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The gross value of stock issued during the period upon the conversion of convertible securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_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>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<FILENAME>R55.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476044824">
<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, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">Principal amount</a></td>
<td class="nump">$ 287,500<span></span>
</td>
<td class="nump">$ 287,500<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentUnamortizedDiscount', window );">Less: unamortized debt discount</a></td>
<td class="num">(40,764)<span></span>
</td>
<td class="num">(47,921)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredFinanceCostsNet', window );">Less: unamortized debt issuance costs</a></td>
<td class="num">(5,794)<span></span>
</td>
<td class="num">(6,812)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConvertibleNotesPayable', window );">Total debt</a></td>
<td class="nump">240,942<span></span>
</td>
<td class="nump">232,767<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConvertibleLongTermNotesPayable', window );">Net carrying amount</a></td>
<td class="nump">$ 240,942<span></span>
</td>
<td class="nump">$ 232,767<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_ConvertibleLongTermNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of long-term debt (with maturities initially due after one year or beyond the operating cycle if longer) identified as Convertible Notes Payable, excluding current portion. 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConvertibleLongTermNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConvertibleNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Including the current and noncurrent portions, carrying value as of the balance sheet date of a written promise to pay a note, initially due after one year or beyond the operating cycle if longer, which can be exchanged for a specified amount of one or more securities (typically common stock), at the option of the issuer or the holder.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=6488278&amp;loc=d3e603758-122996<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConvertibleNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, before 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109500613&amp;loc=SL6031897-161870<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_DebtInstrumentUnamortizedDiscount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of debt discount.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1A<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28541-108399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentUnamortizedDiscount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>
</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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330468244312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Additional Information (Detail) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1"></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>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jul. 19, 2019</div></th>
<th class="th"><div>May 03, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued</a></td>
<td class="nump">1,587,000<span></span>
</td>
<td class="nump">3,144,531<span></span>
</td>
<td class="nump">52,606,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">52,606,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">52,078,258<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_CommonStockIssuePricePerShare', window );">Common stock issue price per share</a></td>
<td class="nump">$ 87.00<span></span>
</td>
<td class="nump">$ 64.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised number of shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">303,343<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfCommonStock', window );">Net proceeds from public offering</a></td>
<td class="nump">$ 131,100<span></span>
</td>
<td class="nump">$ 189,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 320,713<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,225<span></span>
</td>
<td class="nump">$ 3,175<span></span>
</td>
<td class="nump">$ 12,492<span></span>
</td>
<td class="nump">$ 9,459<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Incentive options, term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Stock options, outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">723,914<span></span>
</td>
<td class="nump">959,916<span></span>
</td>
<td class="nump">723,914<span></span>
</td>
<td class="nump">959,916<span></span>
</td>
<td class="nump">957,559<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharePrice', window );">Closing price of common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 147.54<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 147.54<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Aggregate intrinsic value of stock options exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 30,700<span></span>
</td>
<td class="nump">$ 5,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted average grant date fair value of share-based awards granted</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 48.13<span></span>
</td>
<td class="nump">$ 30.07<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1', window );">Total fair value of stock options vested</a></td>
<td class="text">&#160;<span></span>
</td>
<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,600<span></span>
</td>
<td class="nump">$ 2,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Total unrecognized compensation cost</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 47,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 47,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Unrecognized compensation cost, weighted average remaining requisite service period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years 7 months 9 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares', window );">Number of unvested options and restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,833,239<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,833,239<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Incentive options, vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,325,314<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,325,314<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Employee Stock Option | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Incentive options, vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Employee Stock Option | Minimum | Vest Over Three Year</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Incentive options, vesting percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Employee Stock Option | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Incentive options, vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Employee Stock Option | Maximum | Vest Over Three Year</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Incentive options, vesting percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=rgen_NonEmployeeDirectorStockOptionMember', window );">Non-Employee Directors</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Incentive options, vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">9 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Incentive options, vesting period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Restricted stock units, outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">675,567<span></span>
</td>
<td class="nump">740,213<span></span>
</td>
<td class="nump">675,567<span></span>
</td>
<td class="nump">740,213<span></span>
</td>
<td class="nump">734,984<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharePrice', window );">Closing price of common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 147.54<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 147.54<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested', window );">Aggregate intrinsic value of restricted stock units vested</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 25,000<span></span>
</td>
<td class="nump">$ 15,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted average grant date fair value of restricted stock units granted</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 66.00<span></span>
</td>
<td class="nump">$ 33.46<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue', window );">Total grant date fair value of restricted stock units vested</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9,800<span></span>
</td>
<td class="nump">$ 7,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=rgen_UnderwriterMember', window );">Underwriters | 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised number of shares</a></td>
<td class="nump">207,000<span></span>
</td>
<td class="nump">410,156<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></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_CommonStockIssuePricePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Common stock issue price per share.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_CommonStockIssuePricePerShare</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>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Share-based Compensation Arrangement by Share-based Payment Award, Options and Equity Instruments Other Than Options, Nonvested, Number of Shares</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Stockholders Equity Note Disclosure [Line Items]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate number of common shares reserved for future issuance.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cost not yet recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from the additional capital contribution to the entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted average 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of vesting of award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fair value of options vested. Excludes equity instruments other than options, for example, but not limited to, share units, stock appreciation rights, restricted stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=rgen_StockOptionAndIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VestingAxis=us-gaap_ShareBasedCompensationAwardTrancheOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=rgen_NonEmployeeDirectorStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=rgen_NonEmployeeDirectorStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=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_UnderwriterMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=rgen_UnderwriterMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_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>67
<FILENAME>R57.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330480106888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>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, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 4,225<span></span>
</td>
<td class="nump">$ 3,175<span></span>
</td>
<td class="nump">$ 12,492<span></span>
</td>
<td class="nump">$ 9,459<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_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="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="nump">563<span></span>
</td>
<td class="nump">375<span></span>
</td>
<td class="nump">1,421<span></span>
</td>
<td class="nump">992<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_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="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="nump">326<span></span>
</td>
<td class="nump">351<span></span>
</td>
<td class="nump">1,092<span></span>
</td>
<td class="nump">992<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, general and administrative</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 3,336<span></span>
</td>
<td class="nump">$ 2,449<span></span>
</td>
<td class="nump">$ 9,979<span></span>
</td>
<td class="nump">$ 7,475<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>68
<FILENAME>R58.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330471582232">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>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, 2020 </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="top.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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Options outstanding at December 31, 2019 | shares</a></td>
<td class="nump">957,559<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod', window );">Granted | shares</a></td>
<td class="nump">69,698<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="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised | shares</a></td>
<td class="num">(303,343)<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Options outstanding at September 30, 2020 | shares</a></td>
<td class="nump">723,914<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Options exercisable at September 30, 2020 | shares</a></td>
<td class="nump">339,191<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber', window );">Vested and expected to vest at September 30, 2020(1) | shares</a></td>
<td class="nump">693,689<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="top.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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Options outstanding at December 31, 2019 | $ / shares</a></td>
<td class="nump">$ 30.81<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted | $ / shares</a></td>
<td class="nump">104.61<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised | $ / shares</a></td>
<td class="nump">23.37<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Options outstanding at September 30, 2020 | $ / shares</a></td>
<td class="nump">41.03<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Options exercisable at September 30, 2020 | $ / shares</a></td>
<td class="nump">$ 31.00<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="top.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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Options outstanding at September 30, 2020</a></td>
<td class="text">7 years 7 days<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="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Options exercisable at September 30, 2020</a></td>
<td class="text">6 years 18 days<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="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1', window );">Vested and expected to vest at September 30, 2020</a></td>
<td class="text">6 years 11 months 23 days<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="top.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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Options outstanding at September 30, 2020 | $</a></td>
<td class="nump">$ 77,102<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="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1', window );">Options exercisable at September 30, 2020 | $</a></td>
<td class="nump">39,528<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue', window );">Vested and expected to vest at September 30, 2020 | $</a></td>
<td class="nump">$ 74,178<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">Represents the number of vested options as of September 30, 2020 plus the number of unvested options expected to vest as of September 30, 2020 based on the unvested outstanding options at September 30, 2020 adjusted for estimated forfeiture rates of 8% for awards granted to non-executive level employees and 3% for awards granted to executive level employees.</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Share-based Compensation Arrangement by Share-based Payment Award, Options, Aggregate Intrinsic Value [Abstract]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Net number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount by which 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330471064312">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Summary of Option Activity (Parenthetical) (Detail) - Employee Stock Option<br></strong></div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of shares subject to forfeiture.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=rgen_NonExecutiveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_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>70
<FILENAME>R60.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330473199240">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Restricted Stock Unit Activity (Detail) - Restricted Stock Units and Performance Stock Units<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr><th class="th" colspan="2">
<div>Sep. 30, 2020 </div>
<div>USD ($) </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="top.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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Unvested at December 31, 2019</a></td>
<td class="nump">734,984<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Awarded</a></td>
<td class="nump">187,942<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested</a></td>
<td class="num">(225,204)<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited/expired/cancelled</a></td>
<td class="num">(22,155)<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Unvested at September 30, 2020</a></td>
<td class="nump">675,567<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="top.Show.showAR( this, 'defref_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber', window );">Vested and expected to vest at September 30, 2020</a></td>
<td class="nump">650,436<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="top.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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms', window );">Unvested at September 30, 2020</a></td>
<td class="text">3 years 4 months 20 days<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="top.Show.showAR( this, 'defref_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm', window );">Vested and expected to vest at September 30, 2020</a></td>
<td class="text">3 years 2 months 12 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="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract', 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="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding', window );">Unvested at September 30, 2020 | $</a></td>
<td class="nump">$ 99,673<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="top.Show.showAR( this, 'defref_rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue', window );">Vested and expected to vest at September 30, 2020 | $</a></td>
<td class="nump">$ 95,965<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">Represents the number of vested stock units as of September 30, 2020 plus the number of unvested stock units expected to vest as of September 30, 2020 based on the unvested outstanding stock units at September 30, 2020 adjusted for estimated forfeiture rates of 8% for awards granted to non-executive level employees and 3% for awards granted to executive level employees.</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Vested And Expected To Vest Number</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Share based Compensation Arrangement by Share based Payment Award, Equity Instruments Other Than Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Share Based Compensation Arrangement by Share Based Payment Award Equity Instruments Other Than Options Vested and Expected to Vest Outstanding Weighted Average Remaining Contractual Term</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm</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: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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for equity-based awards excluding options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Intrinsic value of outstanding award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=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>
</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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330471049320">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>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, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of shares subject to forfeiture.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=rgen_RestrictedStockAndPerformanceStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_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>72
<FILENAME>R62.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330475990840">
<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="1">3 Months Ended</th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermPurchaseCommitmentAmount', window );">Payments to Navigo in connection with this program, which are recorded to research and development expenses</a></td>
<td class="nump">$ 0.2<span></span>
</td>
<td class="nump">$ 0.4<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Commitments and Contingencies [Line Items]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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_LongTermPurchaseCommitmentAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The minimum amount the entity agreed to spend under the long-term purchase commitment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermPurchaseCommitmentAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>73
<FILENAME>R63.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330479310904">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Change in Accumulated Other Comprehensive Loss (Detail)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2020 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance</a></td>
<td class="nump">$ 1,059,768<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance</a></td>
<td class="nump">1,124,870<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember', window );">Foreign Currency Translation Adjustment</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance</a></td>
<td class="num">(15,027)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive loss</a></td>
<td class="nump">5,304<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance</a></td>
<td class="num">$ (9,723)<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_AccumulatedOtherComprehensiveIncomeLossLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of other comprehensive income (loss) attributable to parent entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4569643-111683<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4569616-111683<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=27010918&amp;loc=d3e74512-122707<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_AccumulatedTranslationAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>74
<FILENAME>R64.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330471308200">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Additional Information (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, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Corporate tax rate</a></td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Income tax (benefit) provision</a></td>
<td class="nump">18.00%<span></span>
</td>
<td class="nump">0.70%<span></span>
</td>
<td class="nump">9.50%<span></span>
</td>
<td class="nump">18.30%<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Income Taxes [Line Items]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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_us-gaap_EffectiveIncomeTaxRateContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(h)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of domestic federal statutory tax rate applicable to pretax income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330479486760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Tax Returns Periods Subject to Examination by Federal, State and International Tax Authorities (Detail)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2020</div></th></tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">United States | Earliest Tax Year</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExaminationLineItems', window );"><strong>Income Tax Examination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OpenTaxYear', window );">Fiscal year subject to examination</a></td>
<td class="text">2016<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">United States | Latest Tax Year</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExaminationLineItems', window );"><strong>Income Tax Examination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OpenTaxYear', window );">Fiscal year subject to examination</a></td>
<td class="text">2019<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_SE', window );">Sweden | Earliest Tax Year</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExaminationLineItems', window );"><strong>Income Tax Examination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OpenTaxYear', window );">Fiscal year subject to examination</a></td>
<td class="text">2013<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_SE', window );">Sweden | Latest Tax Year</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExaminationLineItems', window );"><strong>Income Tax Examination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OpenTaxYear', window );">Fiscal year subject to examination</a></td>
<td class="text">2019<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_DE', window );">Germany | Latest Tax Year</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExaminationLineItems', window );"><strong>Income Tax Examination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OpenTaxYear', window );">Fiscal year subject to examination</a></td>
<td class="text">2019<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_NL', window );">Netherlands | Earliest Tax Year</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExaminationLineItems', window );"><strong>Income Tax Examination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OpenTaxYear', window );">Fiscal year subject to examination</a></td>
<td class="text">2013<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_NL', window );">Netherlands | Latest Tax Year</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExaminationLineItems', window );"><strong>Income Tax Examination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OpenTaxYear', window );">Fiscal year subject to examination</a></td>
<td class="text">2019<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_IncomeTaxExaminationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExaminationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OpenTaxYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tax year that remains open to examination under enacted tax laws, in CCYY format.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32718-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OpenTaxYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>us-types:gYearListItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxPeriodAxis=us-gaap_EarliestTaxYearMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxPeriodAxis=us-gaap_EarliestTaxYearMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_TaxPeriodAxis=us-gaap_LatestTaxYearMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxPeriodAxis=us-gaap_LatestTaxYearMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=country_SE">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_SE</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=country_DE">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_DE</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=country_NL">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_NL</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330473238040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings Per Share - (Additional Information) (Detail) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="2">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>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jul. 22, 2019</div></th>
<th class="th"><div>Sep. 23, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Jul. 31, 2019</div></th>
<th class="th"><div>Jul. 19, 2019</div></th>
<th class="th"><div>Jul. 16, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Stock options, outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">723,914<span></span>
</td>
<td class="nump">959,916<span></span>
</td>
<td class="nump">723,914<span></span>
</td>
<td class="nump">959,916<span></span>
</td>
<td class="nump">957,559<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Stock options, weighted average exercise price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 41.03<span></span>
</td>
<td class="nump">$ 30.44<span></span>
</td>
<td class="nump">$ 41.03<span></span>
</td>
<td class="nump">$ 30.44<span></span>
</td>
<td class="nump">$ 30.81<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Common stock excluded from calculation of diluted earnings per share</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">60,202<span></span>
</td>
<td class="nump">47,705<span></span>
</td>
<td class="nump">117,160<span></span>
</td>
<td class="nump">85,503<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_CommonStockMember', window );">Common Stock [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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities', window );">Conversion of Convertible Securities Stock Issued</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,316,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember', window );">2.125% Convertible Senior Notes due 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Aggregate principal amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 115,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 115,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 92,000,000.0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember', window );">2.125% Convertible Senior Notes due 2021 | Common Stock [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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities', window );">Conversion of Convertible Securities Stock Issued</a></td>
<td class="nump">1,850,155<span></span>
</td>
<td class="nump">466,045<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Aggregate 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="text">&#160;<span></span>
</td>
<td class="nump">$ 287,500,000<span></span>
</td>
<td class="nump">$ 287,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Restricted stock units, outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">675,567<span></span>
</td>
<td class="nump">740,213<span></span>
</td>
<td class="nump">675,567<span></span>
</td>
<td class="nump">740,213<span></span>
</td>
<td class="nump">734,984<span></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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face (par) amount of debt instrument at time of issuance.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=114775744&amp;loc=d3e28551-108399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued during the period as a result of the conversion of convertible securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-30)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21475-112644<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities</td>
</tr>
<tr>
<td style="padding-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_StatementEquityComponentsAxis=us-gaap_CommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=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>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=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>
</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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476692536">
<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, shares in Thousands, $ 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, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems', window );"><strong>Schedule Of Earnings Per Share Basic And Diluted [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 14,552<span></span>
</td>
<td class="nump">$ 1,659<span></span>
</td>
<td class="nump">$ 40,228<span></span>
</td>
<td class="nump">$ 17,807<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted average shares used in computing net income per share - diluted</a></td>
<td class="nump">52,545<span></span>
</td>
<td class="nump">50,852<span></span>
</td>
<td class="nump">52,341<span></span>
</td>
<td class="nump">47,087<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DilutiveSecuritiesAbstract', 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="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesRestrictedStock', window );">Stock options and restricted stock awards</a></td>
<td class="nump">916<span></span>
</td>
<td class="nump">957<span></span>
</td>
<td class="nump">951<span></span>
</td>
<td class="nump">843<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities', window );">Dilutive effect of unvested performance stock units</a></td>
<td class="nump">8<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment', window );">Dilutive potential common shares</a></td>
<td class="nump">924<span></span>
</td>
<td class="nump">957<span></span>
</td>
<td class="nump">959<span></span>
</td>
<td class="nump">843<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted average shares used in computing net income per share - diluted</a></td>
<td class="nump">53,469<span></span>
</td>
<td class="nump">51,809<span></span>
</td>
<td class="nump">53,300<span></span>
</td>
<td class="nump">47,930<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasicAndDilutedAbstract', window );"><strong>Earnings per 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="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic</a></td>
<td class="nump">$ 0.28<span></span>
</td>
<td class="nump">$ 0.03<span></span>
</td>
<td class="nump">$ 0.77<span></span>
</td>
<td class="nump">$ 0.38<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted</a></td>
<td class="nump">$ 0.27<span></span>
</td>
<td class="nump">$ 0.03<span></span>
</td>
<td class="nump">$ 0.75<span></span>
</td>
<td class="nump">$ 0.37<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Schedule Of Earnings Per Share Basic And Diluted [Line Items]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems</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_DilutiveSecuritiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasicAndDilutedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasicAndDilutedAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1252-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of convertible debt securities using the if-converted method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 40<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1930-109256<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1448-109256<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e2646-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>78
<FILENAME>R68.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330472469624">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related Party Transactions - Additional Information (Detail)<br> $ in Millions</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, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=rgen_SpectrumIncMember', window );">Spectrum Inc.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasesRentExpenseNet', window );">Rent expense</a></td>
<td class="nump">$ 0.1<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="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_PrincipalOwnerMember', window );">Principal Owner | Minimum | Spectrum Inc.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="nump">5.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_MinorityInterestOwnershipPercentageByNoncontrollingOwners">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The equity interest of noncontrolling shareholders, partners or other equity holders in consolidated entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeasesRentExpenseNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Rental expense for the reporting period incurred under operating leases, including minimum and any contingent rent expense, net of related sublease income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=77902758&amp;loc=d3e41499-112717<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasesRentExpenseNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_BusinessAcquisitionAxis=rgen_SpectrumIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=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>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_OwnershipAxis=rgen_SpectrumIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_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>79
<FILENAME>R69.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330475706632">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Reporting - Additional Information (Detail) - Segment<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NumberOfOperatingSegments', window );">Number of operating segments</a></td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Accounts Receivable | GE Healthcare</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Accounts receivable, percentage by customer</a></td>
<td class="nump">0.00%<span></span>
</td>
<td class="nump">18.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13531-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13537-108611<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfOperatingSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_CytivaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=rgen_CytivaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>80
<FILENAME>R70.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476034792">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Reporting - (Percentage of Revenue by Geographic Area) (Details) - Geographic Concentration Risk - Total Revenue<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, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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="top.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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember', window );">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="top.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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Revenues, percentage by country</a></td>
<td class="nump">50.00%<span></span>
</td>
<td class="nump">54.00%<span></span>
</td>
<td class="nump">48.00%<span></span>
</td>
<td class="nump">51.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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember', window );">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="top.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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Revenues, percentage by country</a></td>
<td class="nump">36.00%<span></span>
</td>
<td class="nump">33.00%<span></span>
</td>
<td class="nump">38.00%<span></span>
</td>
<td class="nump">37.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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember', window );">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="top.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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Revenues, percentage by country</a></td>
<td class="nump">14.00%<span></span>
</td>
<td class="nump">13.00%<span></span>
</td>
<td class="nump">14.00%<span></span>
</td>
<td class="nump">12.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13531-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13537-108611<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=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>81
<FILENAME>R71.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330469689720">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Reporting - Percentage of Revenue from Significant Customers (Detail) - Customer Concentration Risk - Sales Revenue<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">GE Healthcare</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EntityWideRevenueMajorCustomerLineItems', window );"><strong>Revenue, Major Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Revenue from significant customers</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12.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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">MilliporeSigma</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EntityWideRevenueMajorCustomerLineItems', window );"><strong>Revenue, Major Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Revenue from significant customers</a></td>
<td class="nump">14.00%<span></span>
</td>
<td class="nump">11.00%<span></span>
</td>
<td class="nump">14.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13531-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13537-108611<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EntityWideRevenueMajorCustomerLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EntityWideRevenueMajorCustomerLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_MajorCustomersAxis=rgen_CytivaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=rgen_CytivaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_MilliporeSigmaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=rgen_MilliporeSigmaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.2</span><table class="report" border="0" cellspacing="2" id="idm140330476522104">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Subsequent Events - Additional Information (Detail) - ARTeSYN Biosolutions [Member] - Subsequent Event [Member]<br> $ in Millions</strong></div></th>
<th class="th">
<div>Oct. 27, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Cash consideration</a></td>
<td class="nump">$ 130<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable', window );">Value of common stock issued</a></td>
<td class="nump">70<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Business combination, consideration transferred</a></td>
<td class="nump">$ 200<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_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6613-128477<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=35744584&amp;loc=d3e6927-128479<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6578-128477<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6613-128477<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6578-128477<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_PaymentsToAcquireBusinessesGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=35744584&amp;loc=d3e6927-128479<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireBusinessesGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=rgen_ArtesynBiosolutionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=rgen_ArtesynBiosolutionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>83
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
M#<\8#W^6FTOBLKKP#SA>.4B>U?/00?I[M,BT@KS[!Y'LE)(=*]DY(3F"5R&
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
M(T#.MLI@)+)ZG(TR%?\8P'!*3 T+C1=%??VM4S7$+6ONA+/W1-9NA'#/KEP
MS/=,\0:@.*;4U"^0LR#$ <R4=OJ%8F<GCY,RUYU'(JU=FA,#5Q.GG4*@Q!G!
MZT2F4RAXK5UP0 1_,>F.0!0VRP&(LH0OB&(]LI]V,H6Z9<HXS38*/ *Y;BT-
MCH')$4+9'"%48%8\$,7ZLJ.3)]1]GO"[/LT3>D.SU=)V(;327ZVT7&F/EHJ-
MDDK+?IU SJSI= -UZX;^K+'[MD<]\S1A!,%P:*[,,>B-<;.X # >X+ OJIU8
MH&ZQX,H<NU=[>B=K;HT@F"[S9FT!O3%+!0(P'D2L1P723B)0MT1P5]'6^+TJ
M"L'L*@J@H"H*.7-4T4X8T. #^R'-=%V*9756O]W+@Y-,2WSGSHAV79BZN_ W
M+3O218ZFF[(4^?0-J3+)998T!_NS?S;-M@F,-M!.662>V0&H,S\P%\88@'G,
MVGQ"SJ((]YS9T:XY4W=S'O6'&60.;/W#B%MY9L/.=.VP2H<-TTEK:6X %D1]
M,HQUW9JY3QL>FH-$Z3HJ[EHT<V_B/W!8S+INR-S=T'%<S.RM<Z07IUG3 )@?
M<6*N= !&O<"C9O&&<!@'?>G'#H[8W5OVQ^(MR=1;?=S5K'N0^['WK@,R_M</
MI6LTS-UH7 _%LRHA,V4Z@#%/I,< QI3[,8 )S.8R/'A1MA+EHGY#*75)W>2J
M>?^QO[M_"_JU?O=GW+\FYR,"W!^3\[AYQ]FY;UZYWB;E(LTERL1<#U6)JP$J
MF[>8S84JUO5KNN="J6)5_UR*9";*"J#_GQ>%VEU4 ^S?)5_]!U!+ P04
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
M-C=S'Z5U,/<K8:I2&S9 \T\2_P)02P,$%     @ :X9E49$53-WR!P  R!\
M !@   !X;"]W;W)K<VAE971S+W-H965T-RYX;6REF6UOVS@2Q[\*8>R+.R"N
M15*RI"()D#HMMD#;!'5Z^UJ6:9M76?22<A[VT]^05B19?&B# XK&LH?4GT/.
M_(;DY9.0/]6.L08][ZM:74UV37-X/YNI<L?VA7HG#JR&7S9"[HL&'N5VI@Z2
M%6O3:%_-2!3-9_N"UY/K2_/=O;R^%,>FXC6[ET@=]_M"OGQ@E7BZFN#)ZQ??
M^7;7Z"]FUY>'8LN6K/EQN)?P-.MZ6?,]JQ47-9)L<S6YP>\7<:P;&(O_</:D
M!I^1'LI*B)_ZX?/Z:A)I1:QB9:.[*.#/(UNPJM(]@8Z_VTXGW3MUP^'GU]X_
MF<'#8%:%8@M1_<77S>YJDDW0FFV*8]5\%T]_LG9 B>ZO%)4R_Z.GUC::H/*H
M&K%O&X."/:]/?XOGUA&#!M"/NP%I&Y!Q@]C3@+8-J!GH29D9UFW1%->74CPA
MJ:VA-_W!^,:TAM'P6D_CLI'P*X=VS?7B[MOR[LOGVYN'C[=H^0!_OG[\]K!$
M=Y_0XF;Y)_KTY>ZO)9JB'\M;]*\__HW^0+Q&#SMQ5$6]5I>S!C3HGF9E^[X/
MI_<1S_MR]%74S4ZAC_6:K<_;ST![-P#R.H /)-CADAW>(1I=(!*1R*%G\=O-
M<1Z00SM_4M,?]?FS4#NT@>!0:"/%'D&\R:+A]?:T8'G#F7H?>$_<O2<V[XD]
M[_D&$<[K4NR9:PY.;>>FK0[DQ^LX(B2[G#T./6-;X32+TL[J3%C2"4N"#KA9
M_Q=6+01ZHU C(-)+49>\8JCN%.OO]5.I?760XI'#4D"KES<[:]YIF@>==<L@
MQ96\."6.>HV*O9 -_\=\X?+?J;MDZ)D\R?#(?PZK.,VQVW]IIS4-3ZRHI\8Q
MO&Z89*I![!ERMG+.<VHIR'":C&3:1G$VIVZ56:<R"ZI<-J+\.=7Y<XU@2K7
MDW<#8C/;723.R4BM;97'2>Y6FW=J\U_,_X9)"5)?UU_QS-2%7H,NG;FE(!V+
MM$VF^3R+W"IQU.?B**CSBU *&2?J(#ARM=-QA,0&P+1R:FT[/%.2I%$TTNLP
M2^:)3^^ '3BH]Z[9,>F4A:WWV>G'881Q[-%$>DTDG(!W1;UE2F-JD$Z48I"/
M=.A7O%CQRJ26"W!T61W7VH+O#Y!SM*N+\F_P/->K.9A\<(\$3(-NNBE+<=3Y
M$)(0XX_%JG+&1]O+V5QBG.!Q/+OLYBGU>:XG"@XCY;MX*2KM%^,GH>=VH-C-
M^MB>PB0=Z[6-R-PCMJ<,3H)B?]0PBQ6$]*\4)G;V2^9CA;81B6(/"'%/'1S&
MSN?Z$<)72.Z19O-C2D@ZM_SGL(LS'V=P#QH<)LV]9(>"KU]3]G#:3_'B%&W3
M9$KRR(IMAQF.!F@ZU]QC!X>Y<]>%=,4 /DCJ*EU'[1$> JIMJI DC<>B;:LT
M\ZV"GCTX#)^[7WG4 1,RMS*XPVKNB2+2 X>$@=-EID/QXDM+Q&8'I7B\2!U6
MT]1'1-(3AH0) P+ED?5KU"G0YLB4I'C,;(=92GQU$.EY0\B;5N0K7UZ<4HDM
M-:/CNM)E-??5Y:3'$ ECZ(NHMU.H*?=#!CI5VH#!L9667%91,L\\,GL,D3"&
M'D135+^W-W"*MVD3IVDRCG6769[$Q*.^YQ();W_&^S\.#%!OV-*0GBXD3)>;
M09UB:EF=!HW;3 4CQ[OKUCTNZ&1Q/"XR7'8X(SCQE!FDQPX)8^=FO3Z)UMO
MLCAPF&[^#TRR$IOFJ9 ,-A3*G2J)@RHTR2SM#K-X3GW)J(</"</G_BC+7:%)
M"9Z&M0DKLGFY0(>J@")=PY.!WP^Z9'>*M^D"Y5UDQY73+L:^3-6#B(1!- BL
MHS*;(>?J=&IWT">F46YI=]CA/,.Y)WG1GE0T>E-<;7A=U.7OQQ7MD4/#R+F7
MHF1LW;Z'/3-9<LCK,.5*;WHA$9G5ZW(3=2 FRL:UD<,*$J<G;](>1#0,HOOB
MY76W"/M;],2;W4Y49G,C5A7?GO;G\.]URL%0GR](7C8Z^O3@G(-RT B/RQ.7
M$92%GC$-#M/"R#J?"Z[4$2;=S$4I8.G*AD/18C;'OMW\@MJ8(FF6))Y2E/:<
MHF%.A;3M]^!GXU&_+AM E$2I+\QI3R :WAE]AZJ^6PF*U5S(,V_5HG$&^8+:
MNR"=>/+,<_I">U31,*H\2'?%L',%VBQ*H]0**]LJSA+O-H[VP*)A8'W<;-CI
M:( ]E^9T 4$E IAJ3QI@JO70+DX#U QX+"IS_JF9, @Q_;MS?(X3.FSM !Q6
MTS3-?.NXIQH-4ZT]29:F>N7_]U@<IWQ)EH\1[3"C)/,6N;2'' U#;O';ZB_0
MBFUY7;>I$&#.A;-DHC;4$IK&T1A^#CN<TXQX:LJX9U\<WJ6]94Q,[^%#HXD=
M1X$)I=%XN^2R(R0FGF00]WR-<9#DR^/A4#&=H" GK+DJ*Z&.TB3.NC_[[NH2
M&,];61_WS(S#S+QISP7;@AD=ZS7LU<7YELZ9D]J.SRY/A@=+YX)ZX,5AX'TJ
MN$0PP4?C#W)!\?R"D!RI'13&:@P70QV0O>E2O+E='>'1F_!CQPXNS]+$$X3Q
MX&XJC,;S4?@4#PY:M=D"/;!R5XM*;,W9[.>Z?.=4;5];)13B;"1Z-K@3W3.Y
M-5?%"IGSCM/M8O=M=QU]8RYA1]]_P.\7ITOEOIO3'??70D("4;!*-M!E]"X%
M3\K3M?'IH1$'<_.Z$DTC]N;CCA6PQ+0!_+X1,#7M@WY!=WE__3]02P,$%
M  @ :X9E48W8WWU>"   3!4  !@   !X;"]W;W)K<VAE971S+W-H965T."YX
M;6RU6&M3X[H9_BN:=*:S.T.N+)=E@9D08 \MG.40V&T_*K:2J,B2CR03\N_[
MO)(MFU-@>SK3+XEMO=?GO=K'&V,?W5H(SYX+I=U);^U]>30<NFPM"NX&IA0:
M)TMC"^YQ:U=#5UK!\\!4J.%D--H?%ESJWNEQ>'9K3X]-Y974XM8R5Q4%M]LS
MH<SFI#?N-0_NY&KMZ<'P]+CD*S$7_J&\M;@;)BFY+(1VTFAFQ?*D-QT?G>T2
M?2#X+L7&=:X9>;(PYI%NKO*3WH@,$DIDGB1P_#V)F5"*!,&,WVN9O:22&+O7
MC?3+X#M\67 G9D;]D+E?G_0.>RP72UXI?V<VOXC:GSV2EQGEPB_;1-I/NSV6
M5<Z;HF:&!874\9\_USAT& Y';S!,:H9)L#LJ"E:><\]/CZW9,$O4D$87P=7
M#>.DIJ#,O<6I!)\_G<=@,+-D<[G2<BDSKCV;9IFIM)=ZQ6Z-DID4[GCHH8^X
MAEDM^RS*GKPA^S.[,=JO';O0N<A?\@]A9S)VTAA[-GE7X%R4 [8[VF&3T63T
MCKS=Y/QND/?I_^+\^[+' _;?BV=GW$E'A+=6.*$]#RE[OQ8L,]J!*N=>Y&PI
M-=>9Y(HYD @4AW=,ZDQ5 )BMA152LS5_$FPAA&8HTY);G"RV[$Z42J[P<&9L
M:6Q4\,%#PU__<CB9C+[,3%%RO0UWXR\[S>.&KW[.C&U.-J)^]A$FH+PR8W-8
M)Y#!?LW (BQ7:DLGHB3K>>MX:6&U+)4@\QE9\: ET<S)+\<^U#J^3J>W20O7
M.2LKZRI"T9O 9BN202=6K"H5W I TN%<9)657M84%\_9FNN5  1%(5WH*XVB
M^<6LT;/#T.O8;Q6W7E@5D#,6.(.:&@$;C_J_L7G_'W3Q]_"3+*2 1= COK#C
MC9!17*FE2K^->)&G\.'W2B(#4.$:+9&(R=&"/PHFG)=% (=\X0YMM(S>^C7W
MC"^7:'01DV P 5X0W@$.T L?697D"ZE:6'+I,F5<9041PBZ*$&E^BR=JH8QL
M@'[52>)[RQPKGH2N:@/$,T:,PTV.:"$Y6J:0*L)*DP]0-KZ" J"#ANM@9Z7(
M=KAMV=*: FS&=6 :_+GR"5KK#$T)5-=$L%+B\69MD-%]L]&0YJJ%D[GD%J#L
MM/4UWX@<?].SSK.OQ>*7'38O$2%;%>Q:+L4<=8]B >?U]2PIZ,IL<[/F:Q-T
MQNY%MM9&F550?J6S02)_>=@R7>@5>I2@?G!C5$[8)L)MXKZXN7]1<*U?8. (
MBF"W7@S8M:>8*$#9:6U2HV2R!K0&S) (EFO'LYBP;8<22F*HA>#$FJB#!;(8
MOR8"!4>(-)4"-% $8RFG]L%+F)FEJB,LJ3('[$ZZQVC" ^"V'GM*R&(2CD0*
MN<(DE(3BJ7,;;<-2!4!U+@J9-?F@S9. :F.-YD_25FV,9M^^7YWWQY];N N^
MC8X:_6HNQ>$N+,(GBE*9K:!(NHH<"4]1(;FABT7E$#CG8([UZ*JI;+V5BRJX
M3&AHH0"':XQ'YZKTHT:NOD22*%#N N>%0=,UJ>9J%(*OH!)/1CW1F9.HO(@L
M^CQ"SAUEI&N ;NP;L!]KJ:"IQ@(FYH#,IZ#1,&C;5&?@C ^^N$YU-C5.;B;G
ML8?:NKU+_:H O[9"!"8-%O*.E@]!RP=& 490L4"O:/:'G1=1@;^5Y@M8CWZ+
M%I[+VLIN:B3'NK$E!%K32P.TPKH),SHF%R9 B9:_X1;!JX(B72$!3$6Z.[D9
MXM5M94%?/;NX8QJ[+O5/BD"&:,>!D.=!,6R0.B[K9 9M%0L2+/*=2/=.&^W$
MJ>ZH+\VH *6MB>L!D8801B;*-]K@7F;<1BI5SY7H-@T6YP*\*<G:Y$LHD[F!
M-\P_GO\+%1-[-F00[!U\ RQHIPX+%XH>ER\W+>P5.@?RCCV4>7#F1QP.DESJ
M=) PYNHJ3291TK\KS+R>D3^=/H,D@>I$H:1I6Z-7);8!QC52-#NIX@7"4U H
M"8 %P,/B .N)M;$>"8Q(8.D+4S7SD3;D*C@11Y7<^E,FI[R&]"9W $P;@09T
M1;7D*C"_"UBHIPTV!R%42.^%Z/I0;W>I9P8H4#T*R+BC5M75FZJ2IN 9%M=I
M;L(6>MXN&;=AM<#T9--JA>1"7Q@?QKYPF3Q_U8TS0RJ:YG\YG9^UN_!/O6>_
MFG9:3^</B974]\>[:?>^Y-*R[URA:FX$IPTM;(0?[DV)F70X&7T\8N?M]G9I
M>2'H)3CY/*N'9 UGA_8N;IJQG&C??5W7H%G[:]/:EP5-2SUUDE9K$)-PNTL;
M7)_L /:6'1[!=Q\-:BGG[3+V1W6OA@9H)Y3G#S7M7D+M"J]/6'46JA/\K\;D
MH950'7T+5=,<7='.@K;9?T"OV]T;]3\1K+70N-'0:873%S<=$_]6Z7"__Z:!
M^R&LK<M7VM%&1S[W9S1M/+LV5.M-<'<G^Q^[X). -_^;H'0%[33,L.]7K"UA
M]OT,Q,.=-L!*\45X3T3KF%I+B11CU*3?Z! XS11VU>6VJ:@ 9ESS4-%^0SM>
M(@_@Q[O]T?X?4NOPYYJ32^G5-+Q$Q%F%C/2DV<77J5G:KEY)J7.TCP:/SV_B
M\;D_GH35&G+8/7]N@W. %$GY,T<_51T(.H5/!='E[[I,TME6<-OWIA^Z0F/@
M_]+<4%7LG\*G)M>MFV;5^4\7)Z/^"#E[+A8>11K^(GA&/P&Z9HV)]?*M'O0?
MYM7"!Q@^'8SZDP:)@R_,L6\;S2[06#! 6[+#\1[5U*!3W$'Q6_^O?=@9=KYP
M(:JK\!TO;"_:QX]=Z6GZ5#B-7\A:\OB=\89;O <YIL02K*/!P5Z/V?CM+M[
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
M6K65NJTR%FDX*%D-'"*P\)ET-GBK;SAAZ#(1)7)V>I8.OM\R>D'E0I%AEO@
MV4/P%M;2SJ/!!;=U#G?A,0M CX=X.AL-WJ#*"I NU'@+[6DR'X\&@,4<40:,
M,P3052DW2DS2T>"#*9^2U]%>!/;XVIB<PSQ.DY.S2>N'K;QE)QRELXEX0O=M
MK?HE<32>C_!HUZ"V91REX_%#+R2B,.7J*1)B(XYFDSG>?=LK2O+9;F$>BG26
MG(RG@Z;R&QLHHU;Q LL/Q^GP%&RH*#PU1*TX#GD$6*23V>@,>5FJ)553 [G4
M!BS5&&>Z+('B>BOIB;LME5V1_1'&N/>N;).WZ$(16=N7 ^R+3-D*]8=,1C]Q
M\@IN07*8QD5JN<16JLQT+[D8"-6JJVN+_QZ$9;8F3&:(D@%V8YWL-,:A^%0O
M7$5FH>1NJ>[BFXW_4 C&YM03^V[!3KA;@R53>@"^R#2DJ:CD#94K6BFA^;L2
MXE?\3D#JS[UZK3B[^ %D5+ZK=N @J(->#R67VO?F*#'FA',FTQR5:QU$[%*
MT 215;'5Y%1IR[I 'J*#/1O\$*^6W38S.#K?!R3W%N54W"II"4T>JD_4@W_M
MX4)MI/4KUELT"<]0O=ALFDQ.1X./G@$DW!G?^7B0R$MK!$\E^,2Y'WA3IZ\
M71M.PAYL<S&V;I_3Y C*.\)@4^C<5P,D<NO@MTA-J]8TBUVIF!='A7'N"9$X
M #AMT.L;=]KHL*==;E &U(*R0/P@0;O>(I^3L:_0Y9_0,J0+1CX#@"#?T.:-
M?U!S@CMV] TH7DNM-;$N>'](_/X]^MUD3$:.YTG+G!H<VUV'TG$U*I(,("\1
M*K*Z4GRJ3/9%7,96>+ZRRK?K(WHQD-SF;LOG%[>^JZ)IKQH-DIV=^94+*_5*
M?",M,,^4B2?JN;[2.5$X>@/.1+F2(FM,%)X][ @ZXN;?"8TG,$&_G9<[-1H5
M[E' IUQ?1'X-]7L9:'(3"0:Y!B]\6+NC0=49#8AHRT"H2^>G%"87S':XPEMF
MW^Z'O:BEY_V,C'?%X70X:IJ+#CM*?XC@A1 XDL@2TT=D3HHF8('YM>+9+0RQ
MX[G?Y*Z,H(@W&KLXA0W+52(02MCJ@[-#EAMR$NS\8[5 &$Y+RW PTD!L1TG.
ME Z?/9QW?'(MB49H[AH*$ZVY5="I0T4=->!<A.F1U/&S<)=' X_Q$N"(V(>7
MPJG?:!/C@CQ@8!1R62GO=S(X-I(,-C47]^>B#P,+[RCZVP$$D/W?C"C=;#<+
M8BO<&;3KC2O!/7E-4R4C2Z8"?%I3K]:1N!B8Z F!GS:\%WV0*"B<S-6^+>^9
MD^3"H)[]^!A=<L<3Z '$-BW)V1"4^U7]P/=-!>8'2[L3,3S9B0(RV4O+  )X
M[KD3!53M&5>H#^ -S/5 \@Z3N3] ?@"/2(97"4(<N!H&%IXM\I_!/Z@ AN(G
M:GHYC_?68#]:WCYWL8\\:BB\.P/&$QXJXJ:T&L:[OVG_;TQSD^1L?@)&!#C4
M[?%)>IK,)Y.]<]XD&4VGG3D/ F:3WS'IS2>]44],1X\8\K#+;')Z'YT\F2>G
M]\YXLV2>/L =,<?=)8VGI]U9;YHF$TQ0;U1HD*#N,' &M]V=_Z:3T_OFOS0Y
M.SWK/%R8LJ;;<'4ZP_U&?CB@PL28G(WF#\^,)X\?&2E0)X\=&B?S9#8[>]34
M.$V'D[]B;-P9%3,^?22C L6F$Q).8K-!"F3$7HU=R5+_&AX2ERTSRRZ@4,,R
MKTP#M=3LJ_#=!W17-Z@GVB';FU?_A;GO<H?&!G0ECC<^>X[^%L]BL_8L-IZS
M\JDFB$IVVZ,\'PR0+4TBD80-_,40:?Y)KTI@:D8;GK="+DD(^9VW'3\7>T^
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
M>(C.ETLE(30MP/.Y0;<4?] ![7>GK_\+4$L#!!0    ( &N&95%8INYXUP4
M *H-   9    >&PO=V]R:W-H965T<R]S:&5E=#$R+GAM;)U7WV_;-A!^[U]Q
M\(HA 1S_C-,L30(D68MU6(&B:;>'80^T=+*(2*)*4G:]OW[?D9)B9TX&[,66
M2-[QN^^^.U*7&V,?7,[LZ7M95.YJD'M?7XS'+LFY5&YD:JXPDQE;*H]7NQJ[
MVK)*@U%9C&>3R=FX5+H:7%^&L4_V^M(TOM 5?[+DFK)4=GO+A=E<#::#;N"S
M7N5>!L;7E[5:\3W[K_4GB[=Q[R75)5=.FXHL9U>#F^G%[:FL#PM^U[QQ.\\D
MD2R->9"7#^G58"* N.#$BP>%OS7?<5&((\#XUOH<]%N*X>YSY_U]B!VQ+)7C
M.U/\H5.?7PW.!Y1RIIK"?S:;7[B-9R'^$E.X\$N;N'8V'U#2.&_*UA@(2EW%
M?_6]Y6''X'SRC,&L-9@%W'&C@/)GY=7UI34;LK(:WN0AA!JL 4Y7DI1[;S&K
M8>>O[RRGVM-OQCEVEV,/ES(Q3EKSVV@^>\;\)_IH*I\[>E>EG.[;CP&EQS/K
M\-S.7G1XS_6(YI,AS2:SR0O^YGU\\^!O_M_QT9\W2^<M=/#7"XY/>\>GP?'I
M_R7N9?/%B/8\T+LLXZ!0^E55#>J#II&$(?F<Z<Z4M:JVI%)3>T[IYOXK9J=G
M)]/YD'[\X7PVF[Q]KRM5)5H5]*%"H UJQ[LP.9V^?;+=T1=3ZX3FL[/C"_K(
MRC6693V9[,E*E,Y!Q\.P*QRW,.C+#DSMB+_7Q@&I-Y1$AT5T6%N-^M?%%H%9
MTZQR<JJ0C3),F;1) %I5*3FV:YVP&^UZ#M&\>1O<@R_X%Z^D"G078&0JV><F
M-859;0D]"V6?F$9XL)RP7JMEP8(NY34:4@W[QNEJ1;E&J5F=($:45-<S9!.K
M&7Z'*$9KA2"!EC4>?!$GIC(E:)0QQ/2 )HHAQ KC&(3"OFMI3HA.\MAY<5[Y
M)L0<BYRM:T,C2#3E0[C!Q%VWF!3VKXTI$(%TI53RY'+PBF <J-$9<%GM'BB#
MXHUU0])54C2I+%BQ65E5YUA2F$0)W!']W+ D2U"ZW%A_XMF65*D0*H"Z)LEW
MT41ALO-(IR3B$-,^5Q[,;*DRGI;<<8O5R$&/6ZT$5,O0(3=+54AR_T6 $D&)
M$\ETJS*< CY'M4$539U9M*=>9ZI;$W,RI T8R%M>H,#H+I1!C\T?T)ZJ5+%U
MVK60M:6LKQ!)+,?*V^1<[>P)FA$EK(0+M5:ZD-CVU$V\5D4#!TYT%'H521:B
MEAZE!34*1V@2,EZ; L,B7<GWL%7C%E%^:[3(Q'*MMB$LY+?$VA6VB.) !%)
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
MW#N]^%Y'U<E<>MT[V?J_P13@,^'!^7(63+!H(#5&VN#D?P2IR2A(&5+1.)@
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
M@GE6&,XTY6RRJCRY;V^/$]*J5H]#A#=H/9(:R@<$BPX5*.M]J^F\ ]-1O)\
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
MP_[AAP1L?%;CQILF/&69\?0PAF5%_T30L@#=E\;XS88-;/_;S/X#4$L#!!0
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
M^4B$_.DBWR1?\^>"%5JTK_AOR;Q(&_!\[7WJ;DA!__WHXB]02P,$%     @
M:X9E44(1PQ>9"   3!8  !D   !X;"]W;W)K<VAE971S+W-H965T,C0N>&UL
MI5AK4R.Y%?TK*J<J-5.%'YCG,$"5,<PL">RP&&:2CW*W;"NHI5Y)C>'?YURI
M6]UL;":;?+'[H?LZ]]ZCJSY=&_OD5D)X]E(H[<YZ*^_+D^'092M1<#<PI=!X
MLS"VX!ZW=CETI14\#T*%&HY'H\-AP:7NG9^&9W?V_-147DDM[BQS55%P^WHA
ME%F?]79[S8-[N5QY>C \/RWY4LR$?RSO+.Z&24LN"Z&=-)I9L3CK379/+@YH
M?5CP78JUZUPSBF1NS!/=7.=GO1$Y))3(/&G@^'L64Z$4*8(;O]<Z>\DD"7:O
M&^U?0NR(9<Z=F!KU0^9^==8[[K%<+'BE_+U9_R+J>(*#F5$N_+)U7'NPWV-9
MY;PI:F%X4$@=__E+C4-'X'BT16!<"XR#W]%0\/*2>WY^:LV:65H-;7010@W2
M<$YJ2LK,6[R5D//GLY@,9A9L)I=:+F3&M6>3+#.5]E(OV9U1,I/"L0_-U<?3
MH8=I4C#,:C,7T<QXBYE/[-9HOW+L2N<B?RL_A,O)[W'C]\7X784S40[8WFB'
MC4?CT3OZ]A(.>T'?_A9]%]Q)1RB@M)W0GE/-;(KSOU1SUU'#'E:"948[X)=S
M+W*VD)KK3'+%')8(%+EW3.I,54"'K8054K,5?Q9L+H0FGTIN\6;^RNY%J>02
M#Z?&EL9& Q\\+/SU+\?C\>CSU!0EUZ_A;O?S3O.XD:N?,V.;-VM1/_L(%] F
MF;$YO!.H1+]B$!&6*_5*;T1)WO.V.$H+KV6I!+G/R(M'+6G-C.)"S=0VODXF
M=\D*USDK*^LJJC1O@IBM2 >]L6)9J1!6 ))>SD166>EEO>+J)5MQO12 H"BD
M"_S0&)I=31L[.PR<Q7ZKN/7"JH"<L< 9JZFAV>ZH_QN;]?]!%W\//\E#2E@$
M/>(+/[:DC/)*U"C]:\2+(D4,OU<2%8!.U: V6DR!%OQ),.&\+ (X% MWH,,R
M1NM7W#.^6("P(B;!80*\(+P#'%@O?!15DL^E:F')I<N4<945M!!^48;(\C:9
M:(4JL@%Z8Y DM\T=*YZ%KFH'Q NV"H>;'-E"<;1"H52$E28?@%I\!0- !\3I
MX&>ER'>$;=G"F@)BQG5@&ORY]@E6ZPI-!53W1/!2XO%Z95#1?;/6T.:JN9.Y
MY!:@[+3]-5N+''^3B\ZSK\7\EQTV*Y$A6Q7L1B[$#(R(9H'DS<TT&>CJ;&NS
MEFL+=,H>1+;21IEE,'ZMLT%:_O9E*W2EEV =07QP:U1.V*:%KTGZZO;A3<.U
M<4& (RF"W7DQ8#>><J( 98?^I4;+9 UH#9BA$"S7CF>Q8%N&$DIB<PK)B3U1
M)PO+8OZ:#!0<*=+4"K! &8RMG.B#EW S2UU'6%)G#MZA^/U$\?OO<O.]=$\Q
MB$<DS'I,+-0'FTC^744T)YVXDF?BK!=V"_LL>MNTA^!1Z*&6F00(H;GKW@.M
M6>I00).+0F9-O6KS+ "-L4;S9VFKMH:FW[Y?7_9W/[7E4/#7F BC-]9Z'"*$
M17F)HE3F55"EN8J #D_1P;FABWGE$*ES<,=ZL'ZB%6_EO HIH6QIH9 NUS@/
M9JWTDT8OO<TTK0 =";PO##8%DSBA1B'$BE7BV:AG>N<DF"%F'OL02I([ZAC7
M%$+CWX#]6$D%2S46<#$'9#X5%6U6+8UV-L3=H\^NPQX-!U&8*7C,N[;>?J3>
MJ,"OK!!!2$.$HJ/)1M!D@ZT*6V0Q!Y<UP\G.FZP@WDKS.;S'?H#JR67M9;<T
M4F#=W!("K>NE 5IAK(4;'9<+$Z#$EK3F%LFK@B%=H0!,1;8[M1GRU:7:8*_>
M6[EC&C,U\3ME($.VXX:5Y\$P?) Z'@K(#9IZYJ18Y#MQW3LTW\E3S?AOW:@
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
MRGS-.">3T)_.HUT=:KIQ13@*DXB\M_.J05]\[^2/)FF 2]\GM#79X-[)9,C
M)UR*Y0<#JB)'292B[2?*%,&3:1PC;<VZDM M_]Z1,/&GDWB _-.>_-,WDW^/
M\3?"4.Q!FWU'?EO&:VT82BNN/VDH&HY-L +]&NV'G3Z^H*UQ179.\&?+E([5
M>UW1\9SMHF.[Z+:ET5IFS(6V9AW$]>TCV1/,E@@E8'&ASZ-I\^ VCQ/O:3LJ
M@+A3^,V>@G=T\5H_'>1F3#9 E6VJ(9HB+5JS8;[V:"^)VV84=6M(8G06^]%L
M2'QG/25F@Z=SM=-:2_$W*.V\1Y[_=TH[[/K_H[21/T^GWCUR$)U8#CJ;<.:G
M4?2J!D=^$,=[&HP 2?0O5#B-7L@PB8,W"#!Z2:+9(8Y/4W]V4'\3/PT'"(T:
M^R.39[-]'8Y#/YK$"%^ LBPP]!D33+!L/VIS',T.:7/HSV?SO<6%%(V=QE*'
M"<[W^ KS$"BW1Q-_'J3#>CY]NYS;@YJ^5="CU$^2^4"3)7V3)8-,?Q*TR9DE
MUD-3UQSP3FXH)W=*$G<S1FUO7P=8]]?Z:!C]I737".K 2,$$%:C '%NAAR>Y
MQ',0TM@'@;W9(Q<VA.9_(:LJUPYHBG.&9:QV>MRQF6BZ0GS;!AHO[-95H63E
MNI!^)^FL]2"P8;2FBO$-AI SV]DKV+:N[ ^L1=0X2PV^01J>DY*N+*QI4!$V
M1&:N?^RT^[VPW!6:ML^2!8!PNF!?139@G/N%B@9?2,ALO/Y.4H(IH=>B,8V"
MWMVK2N%COAG4AF!T1)<4[7-\%J" ?,&RO[BD$[QB&R?$]I[M64?>75]](^T1
M;VF,; I2/\66VEE8UC&!+>>6\7=I$NZMXJ^(</7N SGQ+JEF&1H'Q_'4^\AX
M8QQ1<?CJO6.\]ZI!P5BZMYLFKEW;!TX_VS\/+]I7T<Z\?5O>4H77?XV]5>#6
MX'B.MPG5OM?:@9&U>R,MI$%U<I\E/G%!60-<+Z0TVX%UT#^:S_\!4$L#!!0
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
MQ_PY/V9/G;%D:VR1'!2\Q?H4TOYK2/I)_X!>VB6:!KWT_XG"C_G2D>6&^'E
M>-@)#X/P<)_1MIWA2P%SQ3TN=(; '0//2^M/YEEF&DT.;C!#^1!J_5*I#P>\
M*Q$*XT-)O0+R*E!;\R!S#B/ \M4)OZUK87,P!1##16>,+R!KC:G6F-2AQ(P3
M!-)Q2^=-1IA#84W5LBMC2?[AH\PX\B\!PUA9;-.Q73I AKV@0TV!JGFL,)U1
M@(\U!EV&+)&EE&KWO180G%!I&B=T[HXOCKRKHX50P3=[^R1TXPL]:'L"7D%O
ME(S@^.BRL=8'K-%*PR9+H5<(O4&:\N6.P)6P60GIEM\[&XWWLGV=UE82GIBB
M<)">'\!UF3TO[#A]YK[1V/4S.T\/Q]ZCV1O_DQ._)H35$NV3-M?E+!G \4N]
M'>],B@KM*LQ#!^%_;(=&=]J-W'D[:9[@[;SF:JZD=J"P8&K_]'P4@6UG8+LA
M4X>YLS3$4RPL2_YLH/4 OB^,H>W&!^@^1+._4$L#!!0    ( &N&95%*]M6(
M\@0  )\,   9    >&PO=V]R:W-H965T<R]S:&5E=#(X+GAM;,U72W/;-A"^
M\U=@5$]'GD$L$GR(5&W/R(J3^)#4$[O)&28AB0U)*  8V?WU_0!2LFS+ZN/0
MZ45: /O&MXOEZ5JJ;WHIA"'W==7HL\'2F-5D--+Y4M1<G\B5:' REZKF!DNU
M&.F5$KQP0G4U8KZ?C&I>-H/S4[=WK<Y/96NJLA'7BNBVKKEZN!"57)\-@L%F
MXW.Y6!J[,3H_7?&%N!'FM]6UPFJTU5*4M6AT*1NBQ/QL, TF%['E=PQ?2K'6
M.S2QD=Q)^<TNKHJS@6\=$I7(C=7 \?=#S$15645PXWNO<[ U:05WZ8WV=RYV
MQ'+'M9C)ZFM9F.79(!V00LQY6YG/<OU!]/$X!W-9:?=+UAUO$@](WFHCZUX8
M'M1ET_WS^SX/.P*I_XH ZP68\[LSY+Q\RPT_/U5R393EAC9+N%"=-)PK&WLI
M-T;AM(2<.7\O9;$NJXKPIB!7C>'-HKRK!)EJ+8PFPUN.E3X^'1D8LR*CO%=\
MT2EFKRC.R$?9F*4FETTABJ?R(SBY]91M/+U@!Q7>B-4)"7U*F,_\ _K";>2A
MTQ>]HF^V1*Q"D[(A,Z[40]DLR!=>M8+(.=FD95_<A]7>+@69RPI@MPJ-31_
MBX+1HD%"#8YS9]D:=JN-\1\;XXO-G:#F'$L#&Z3NTBEL.@F2841])]0V(V3(
M:]E:$TZO;#5N5!]/O M>\287A&NK^ZW(>[G R@49.2)1DM(H"+UI_KTM=>FJ
M!:R7@$(CA(*YC[(JK(NW(E\VLI*+!Q(P&H]#[Q$_Q>] *\K5(-R*&T@926:/
M(J70% C+3PC+0F_6UBVX4)'$*-YH2]LB?=0R3J)GON\)&LZGC/I1>  0T180
MT<&;VT$_=^C?=_G_4 4E#1IK+M'$M$T)HC!/ ,+-GK FWLL][[V26I-IGG>9
M@[)I+94I_^@R]PEVOKH>A),A,/ @N-+'WG"Z#Q;>N[(IC7A3X0(*'#US>^+M
MW/0;=+D?Z-XK<!Z1-*9!EH 8!B'UXX@<@QXS&D2,!*EW#<^L-18!D?;GF/S\
M4\H"]@M)<>FVGR$HAQ!XK9?E2I, XB&+R3 ,:9H$$ E"(#*)2!![MXH7>(?P
M1I&(^F-&AE%JM88TSF Q\WY%0M5."-!'QS&L!Y0E(3BC=$Q"[U8:CHHZ&#:!
M (W3T-J@:99"F 413=*8!(EWA<H[*#_9=7;L^]O(=^C>CY>FCV \H@S&CW;,
M8S>(:9C&W@MH_06J7A3ZQ'NQ];_!%."3V$XTS&@"HH=4C+3!R7\%J<2GJ844
MBVD"9%I( ;C([E-(A8 *L\ +':0B]$.4VCY()=D8[D5C\%ET_5U X283"Z@P
MH6D8.$ %-(7-_P)040;H.$!MS5M (;,Q.] PXVW#C ]VNQM,B$5;N3?K"6XN
M[S$S:N'>K_Y [)DN]O77PQ:GK[P#U.%_)NL5;QZ(@/G<OK42J,BE*IY7QZZO
MHO<54)ZWIE6"K(0J9:%??5#?]:_R)_LJ[PXYSQR[U*:L;5%YW?NLA!V2W52P
M5&+SH-LK"6F&QPY< > )=,269AT=6MK"EHZCS-*V*U*6I9:.W=AFT2KXW,!N
M$(VA*^E!<;1I7_LN>[0S-** %FXTMET%,7?SXW9W.WU/NZ'SD;T;W3]RA5%!
MDTK,(>J?C'&+JAN'NX61*S>"WDF#:G7D$E\00ED&G,^E-)N%-;#])CG_$U!+
M P04    " !KAF5116DC5!<$  !."0  &0   'AL+W=O<FMS:&5E=',O<VAE
M970R.2YX;6RU5EM/XS@4?L^O.*IX ,G07)L$E4J4BW8D1HN 79[=Y*2UQK$S
MMC.%?S_'Z05V!14/NR^);]]W;I\OT[4V/^P*T<%+*Y6]&*V<Z\['8UNML.7V
M3'>H:*;1IN6.NF8YMIU!7@^@5H[C,)R,6R[4:#8=QN[-;*I[)X7">P.V;UMN
M7N<H]?IB%(UV P]BN7)^8#R;=GR)C^C^ZNX-]<9[EEJTJ*S0"@PV%Z/+Z'R>
M^?7#@K\%KNV[-OA(%EK_\)UO]<4H] ZAQ,IY!DZ_7WB%4GHB<N/GEG.T-^F!
M[]L[]MLA=HIEP2U>:?DL:K>Z&!4CJ+'AO70/>OT';N,9'*RTM,,7UINU:3*"
MJK=.MULP>= *M?GSEVT>W@&*\!- O 7$@]\;0X.7U]SQV=3H-1B_FMA\8PAU
M0)-S0OFB/#I#LX)P;G:EE=52U-QA#7,NN:H0'@<Y7*/C0L+Q$U](M"?3L2-[
M'C6NMMSS#7?\"7<)W[5R*PLWJL;ZG_@Q^;EW-MXY.X\/$CYB=P9)R" .X_
M7[(//AGXTD_XOJE?J)PV NU'T7T9S$!1OBI*I;#.@F[ K1 :+4GR0BW/@TL_
M&)#[#ML%FB&&:ZRVG8@%QY>M[A5AA2*L[BU7M3T)'OB:BNW0""XM'$$:LSB,
MJ!&7+(F+X)D4?RK4:6=TA=;"A$5E# 5+)F%P*Y0@7=1 DW5?$3=9C9("HIQ%
M:1H\:<<EV?M7%$>0%RQ+O)$L9442'\ASNL]S>C!5]X8.$>->&=R3P!Q0<'#S
MLQ<=[6[W4>:_2M?MZ7!'MRO#?UB%.V_@""(6QLGN'\Q[(6NBM5 6)>23-+A#
M.AU66M8@6LKY+_3N6%^J/)] G+ RS()]V)"4+"Q32"8LSO+@MC=*N-X@@T:\
M^(8=XM)-(VA'OH57L##+J-!)% =7NNUZ4@>LN*G7W.  L;IQ0R=*63HI"%%$
M8> WNC/]YBRD^,C#I=EH)HTF],W#//B3,D:I2 O()EN!= >3'86DJ4D)14)2
M\2D@PE.XK*J^[>5PIM1(ET4E^&#W."5)12F<P'&2L20OX>0K9G;*S A#P=,^
M*%B:90>4F>V5F1V4$GEJ>O+R3O"%D,)]<A)\C42^D?P/*KQI.ZE?$8FZI2O9
M;C)ZY*L\R6+?*%F1A<$3?R'[,<NS$J@J>1H\Z%<NW>N04TEJ4I8<0EI$2@Y#
MB$C-S]P82KOW/$]RFLC",*!]UE!!R0P5: O(T\S#BBBXQ@:-H; -TA'2D]Q(
M"FD$&9%F6R5Y YZM*(MMG?D'N3J")&9AZH^<)&%)$GU4V/&[.ZY%LQQN<I]G
M2M7FNMN/[A\+EYL[\FWYYJ7QG9NE4!8D-@0-SW(JK]G<WIN.T]UP8RZTH_MW
M:*[HP8/&+Z#Y1FNWZW@#^R?4[#=02P,$%     @ :X9E47W@Y.Z_ @  MP4
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
MUW%;KT5/O3T+;J@J+<YD^TAJMF51Q@%)V/HV?7W9@?J[JG:XT8O?U%1@7?5
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
M=:#]O:1C&">68/K6K?\'4$L#!!0    ( &N&95$XCYJ-+P,  )T'   9
M>&PO=V]R:W-H965T<R]S:&5E=#,U+GAM;(U5;6_:,!#^SJ\X9>K42E/S K2T
M R3*NG4?VB%@VV<3+HE5)\YL4]I_O[,34E!IU \$O]USS]T]/@^W4CWJ#-'
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
MQ;-\N")8]SPCH']?<*Y>'XR!Z@^.T;]02P,$%     @ :X9E44EYK3E8!@
MR2   !D   !X;"]W;W)K<VAE971S+W-H965T,S@N>&ULM9I=<YLX%(;_BL;3
MBW:FCM$7QAW',RG>[G:G[6::MGO1V0O9EFVF@%PAQ\G,_O@5&"-2(<5.UC<-
M8([>HQ=X= YTO!/R1['F7(&[+,V+R]Y:J<V;P:"8KWG&B@NQX;G^92EDQI3>
ME:M!L9&<+:J@+!V@( @'&4ORWF1<';N6D['8JC3)^;4$Q3;+F+Q_RU.QN^S!
MWN' YV2U5N6!P62\82M^P]77S;74>X-FE$62\;Q(1 XD7U[VKN";:1B4 =49
MWQ*^*UK;H)S*3(@?Y<[[Q64O*#/B*9^K<@BF_]SRF*=I.9+.XV<]:*_1+ /;
MVX?1WU63UY.9L8+'(OT[6:CU92_J@05?LFVJ/HO='[R>$"W'FXNTJ/X%N_K<
MH ?FVT*)K [6&61)OO_+[FHC6@&0. )0'8".#<!U #XV@-0!I')F/Y7*ARE3
M;#*68@=D>;8>K=RHS*RB]?23O+SN-TKJ7Q,=IR97\Y_;I$C*:U" E^]8(L$W
MEFXY$$OP2=]V5T7!50&JTR1?O (OIURQ)'T%^N#KS12\?/$*O !)#KZLQ;9@
M^:(8#Y3.JQQ],*]S>+O/ 3ERN.&;"X"#UP %*.@(C_WA?V[3"P"Q,WSJ#Y_R
MN5:'93@</0P?:#,;1U'C**K&PX[QWFX+?:2H/=M;"[Y_T,? >\6SXA^/!FXT
M<*5!'!J_"['8)6G:Y?4^,JPBRZ?^=D(B%! \'MRV3>DX+8P(-*<]2(PTB1%O
M8C'XPN?K7*1BE?#",U/:#$C/YF;8:(3^I%FQ!OK6!?-R@VN=6Y;R7'7>RONA
M:,LW/!S1;M>&30)#;P*?>:%D,E=\GT*7[-"21>$(.ZY6U.A&7MVK^5QL]3PU
MP.=<3WJ6\B[MR)YR0$BW]*B1'GFEW^>WVF$A[[L$1QT>1XZYPL"0+O!*7DN^
M8<D"\#N]:!:\J"ZY4&LN-6BEU.D 5M&NDV"!E=/(E5&+O=";T;OD3E]RCRBT
M1$G@$#5X@L@K^M>&2Z:2? 52KA=,(,N5L<3]5N]4N72F@NQK$N'0D8SA&/2#
M;,J77%N_ (K=_<J+6AA;PI'K>8,&4]#/*1] Z]"V(B0(0\<=#PW*(#WN<=NP
M>]>S5@_1%N\3I\^&<-"/."TMM]KF-&&S)-44=9AMTZV/AN'0(6_X!OV .\C/
M1+[M%K;YUM> 0Y%#V1 .^A'7W&"2:^!LNSVW =>'PV#DT#:(@W[&_?JD'<SO
M9!ZTH=>GL#L%9)B'_,QSIO :I")?]16765<VR,9=7S/8\=PA0SST"/'* O/V
M4&#F_(!<7?_O"\S.9&P,(CR*(L=MB5J5FA^%#ZL5\"^(JX);+PB2IZRJB=?)
MQE?&($,ZA,]6R"##->3G6J,R%]DLR:LYO-;EN6+Y*M'(\2PVR,8>'8618[U!
MAGK(3SW+Y*E^$E/=N&KH'WZX]TW>0 Z%Y[/8L SY6?8<BSNJN&B$7!8;R"$_
MY"R+OTBVX+J/_U'5.*K<RUG&??,W5$.C\_4W!ES8#ZYGN(QM=D$Z=)B,#;JP
M'UV6R9]$WM?9;;C2V:PDYYG=,SS4,F#"9^PA6TVDO_AZCL=V51:&+HL-O;"?
M7K]IW9SS<KG^*-)%N6PUGM^##Q]B\/TCSV9<>N=OR(3/UUMB0R7\_W67<3U6
MNRT/'74(-L3"CU9?1[1Y,;;I! /J6&2Q@1/VP\G7Z<78+KT(<4W8( K["Z_G
M='HQM@LQAP?$T(SX:?9(HQ<3&UEDB!RJAEC$3ZPG=7HQL:LM?1LXGFUBD$;\
MM=8S8$/LWA,2$KA2,OPC3W^+1NSW8Q"%+<W:+)N#$-&AZRU:ZS6:GX1'M(HQ
ML0NV/G*])B&&BN31+O6(5C$F'8TJ'+FNB:$E\=/RE)XI)EWM*G0T3<3PDOAY
M^<2F*28=36R$'30C!J#$#]"G]$PQL<&*(NIZAT$,6HD?K<<OT4]IIZ@A*@W.
MMG930U#J)^C3H173#HS"P-5.4<-1ZN?H21?@Q%:+&G32\W6SU%"0GJN;C:D-
M1S2"+O=;7R/\<#S)_=.[,&HX2<_7ZU)#0GJN7C>F-@RQJ].EAH74S\*3_#^Y
M0:,&@_1\37!H(!>>JPF.ZY';]8M5PPU:GXW+C_P?F=3N%GK56^J@X&*H+Y[<
M?S??[RBQJ;XDSX327*\VUUS?U;(\0?^^%$(==LJ/T\W_7IC\!U!+ P04
M" !KAF51XXX[*@X#   N"@  &0   'AL+W=O<FMS:&5E=',O<VAE970S.2YX
M;6RU5MM.XS 0_14KVH<B[9(XO4!16ZG<M"O!"E$N#ZM],,FTL7#L8#LM_/V.
MG9*6A::5$"]M[/B<.7/LC&>P4/K19 "6/.="FF&065L<A:%),LB9V5<%2'PS
M53IG%H=Z%II" TL]*!=A'$6],&=<!J.!G[O2HX$JK> 2KC0Q99XS_7(,0BV&
M 0U>)Z[Y++-N(AP-"C:#"=C;XDKC**Q94IZ#-%Q)HF$Z#,;TZ)AV'<"ON..P
M,&O/Q*7RH-2C&_Q*AT'D%(& Q#H*AG]S. $A'!/J>%J2!G5,!UQ_?F4_]\EC
M,@_,P(D2]SRUV3 X#$@*4U8*>ZT6/V&9D!>8*&'\+UDLUT8!24IC5;X$HX*<
MR^J?/2^-6 /$= ,@7@)BK[L*Y%6>,LM& ZT61+O5R.8>?*H>C>*X=+LRL1K?
M<L39T3AY*KGASB%#6F?&<LP44G)K8%H*<L&G0)A,R3GCFMPQ4<(>:9V"95SL
MD1_D3,Z0$#0B+I5(N9R1&T@RJ82:O9"+BQ/RYQ+R!]!_R3?");G)5&F0SPQ"
MB^J=AC!9*CVNE,8;E/8Q@K29P9@II&_Q(69=IQZ_IGX<-Q).H-@G[>@[B:,X
MNIV<DM:WO0;:=NUHV]-V-M"NG/HHQPK;\UCWQ<Q'M-/N18-P_D'(3AVRTQCR
MQ)\3T.0:!/-;F?'"U-8W)-6M(W0;(]S[TXV[/)Z#QJ_US?EHX<:^ --F[Z.,
MFXEIIX(V:.S5&GN?,+[WWG@:'6XP_J .>= 8\A3F6-<*]&7MU/O*MI/[AW68
MPZ]ROYF8TJWN]VN-_4^XWW_G?MRG&\RGT:IV18TQ;S1+\9+2C[Y$63>2+(==
MK*=K!9)^E?E;F'<X^S1>R8P_X?\2O+X![7B3_ZM*1YM+W6\E$Y478(&,9QH
M;^O=#CY=53;:7-H^XWXS<WN[^:OJ2)NKV!;SN^_,[_[O?;AVA6,EG_E&Q9!$
ME=)6MWD]6S=#XZH%6"VO.JE+IO%2-D3 %*'1_@&&UU5S4@VL*GQ#\* L7AO^
M,<.&#K1;@.^G2MG7@0M0MXBC?U!+ P04    " !KAF51I(R.5>L"  !I"
M&0   'AL+W=O<FMS:&5E=',O<VAE970T,"YX;6RE5E%OVC 0_BM6M(=6ZD@(
M@90*D IA6J550J5L#U4?3'(0JXZ=VD[I_OUL)Z2,A@QI+V"?[_N^N_,EE]&.
MBQ>9 BCTGE$FQTZJ5'[CNC).(<.RPW-@^F3#18:5WHJM*W,!.+&@C+J^YPW<
M#!/F3$;6MA"3$2\4)0P6 LDBR[#X/07*=V.GZ^P-#V2;*F-P)Z,<;V$):I4O
MA-ZY-4M",F"2<(8$;,;.;?=F'AI_Z_"3P$X>K)')9,WYB]G<)6/',P$!A5@9
M!JS_WF &E!HB'<9KQ>G4D@9XN-ZS?[.YZUS66,*,TU\D4>G8N790 AM<4/7
M=]^ARJ=O^&).I?U%N\K7<U!<2,6S"JPCR @K__%[58<#@.9I!O@5P#\7T*L
MO7,!004(C@'!"4"_ MC4W3)W6[@(*SP9";Y#PGAK-K.PU;=H72_"3)\LE="G
M1./4Y#9^+8@DYM(DNE@Q7"1$08*619Y3T VA,$4+P9&]%G3'RM;4[I?H(@*%
M";U$7]$,/4*<,D[YEH!$3_>0K4$\ZY/5,D(77R[1%^0BF6*A3PE#*T:4O-)&
MO7Y,>2$Q2^3(53HC$Y<;5]%/R^C]$]'WT#UG*I5HSA)(&O"S=GSX+WS4CA^V
MX%U]$_5U^/OKF/JMA$O(.ZCG72'?\[VF?-KA$<0:WC7P[K IG?]3GY\-/U;_
MJQB]NC=[EJ]W@F]:2&V1$ATT*7KZH6WH3D$FGULT@EHCL!K!"0W3VK:ED>*F
MU06\ 2N@*?F2:&")S.OW;>)[P^% %^JM(8!^'4#_S "8G@J$Q3QK4I_V/ZMW
MO0_MLCL^.X7!L5/TV>GZV&?>J-;UFU,=U*D.6E.=8DGBILJ6L/! S>L$_6:Q
ML!8+6\4B0@O5^$S/PR:YX$C./7BG9B"V=IA)%/."J?)YKJWUO+RU8^+('NDY
M6HZ]#YIR"-]CL27ZM4MAHRF]3JBK+LK!5FX4S^V;>\V5G@-VF>IO 1#&09]O
M.%?[C1&HORXF?P!02P,$%     @ :X9E4=:P->\+ P  $@H  !D   !X;"]W
M;W)K<VAE971S+W-H965T-#$N>&ULM59=;]HP%/TK5U$?6FEKG$^:"I *8=JD
M54-EW1ZF/1ABDJQ)S&P'RK^?[8040D!5I[Z4V#GGW(]S&[N_H>R))X0(>,ZS
M@@^,1(C5K6GR14)RS*_IBA3RS9*R' NY9+')5XS@2)/RS+01\LT<IX4Q[.N]
M*1OV:2FRM"!3!KS,<\RV(Y+1S<"PC-W&0QHG0FV8P_X*QV1&Q.-JRN3*;%2B
M-"<%3VD!C"P'QIUU.[&0(FC$CY1L^-XSJ%+FE#ZIQ9=H8""5$<G(0B@)+'_6
M9$RR3"G)//[6HD834Q'WGW?JGW3QLI@YYF1,LY]I))*!<6- 1):XS,0#W7PF
M=4&>TEO0C.N_L*FQR(!%R07-:[+,($^+ZA<_UXW8(TB=;H)=$^PVP3U!<&J"
M\]H(;DUP7QO!JPFZ=+.J73<NQ (/^XQN@"FT5%,/NON:+?N5%FI09H+)MZGD
MB>&L&A"@2PA3CN.8D1AK"^7.E-&H7 AX(&M2E(3#DM$<QK003!K,9:HB@;%.
MDC .\RW<XS^4-;RO,AA<AD3@-+N"C_ X"^'RX@HN("W@>T)+CHN(]TTA"U'I
MF(LZZ5&5M'TB:0?N90X)ATD1D:B#'Y[G!V?XIFQ@TT5[U\61?59P1E;7X* /
M8",;=>0S?C7="KK*^;_HDS='/VB&TXR4H_6<$WK'<U3/#_S2 _%%D)S_/A/(
M;0*Y.I![(E MVS4_%='71/6M7 \#%_FR.>M]5XY1?N"ZWB$J/$;97L^W[$/8
MI .&4*]G-;"#&KVF1N]LC?6_TIEN^8V2_[ZV])I O;?:4A&]0UOLH&7+,4K:
M8K50X3%*VN+95LN6#IBT!9VPY::I\>9\C72+,[$%^?V";R(A##JK/M .&NW@
M?8VRT,O''[W5JIJY/\].J[?C#HSMMVSJP 1MCSHP/=0RR-P[X^1I$^O+!8<%
M+0M1?9N:W>8"<Z>/[=;^R+H=6QW[H;KPZ#/U1;ZZ+=UC%J<%AXPL92ATW9/3
MQ*H+2+40=*5/V#D5\BC4CXF\M!&F /+]DE*Q6Z@ S35P^ ]02P,$%     @
M:X9E45UNSZ#G @  .PD  !D   !X;"]W;W)K<VAE971S+W-H965T-#(N>&UL
MM59=3]LP%/TK5K0'D#;RG32HK01I-Y"&A-JQ/4Q[,,EM8Y'8G>VV\.]G.VEH
M2X@0$R^-[=QSCN_)K:^'6\8?1 $@T6-54C&R"BE7Y[8ML@(J+,[8"JAZLV"\
MPE)-^=(6*PXX-Z"JM#W'B>P*$VJ-AV;MEH^';"U+0N&6([&N*LR?+J%DVY'E
M6KN%&5D64B_8X^$*+V$.\FYUR]7,;EER4@$5A%'$83&R+MSSJ>MH@(GX26 K
M]L9(IW+/V(.>7.<CR]$[@A(RJ2FP>FP@A;+43&H??QM2J]74P/WQCOVK25XE
M<X\%I*S\17)9C*R!A7)8X'4I9VQ[!4U"H>;+6"G,+]K6L5%BH6PM)*L:L-I!
M16C]Q(^-$7L Q=,-\!J =PP(7@'X#<!_JT+0 (*W*H0-P*1NU[D;XR98XO&0
MLRWB.EJQZ8%QWZ"57X3J0IE+KMX2A9/C&6R K@$M.*O0G"PI69 ,4XE2HPU<
MH),)2$S*4_0%W<TGZ.33*?J$"$4_"K86F.9B:$NU$\UG9XWJ9:WJO:+JHQM&
M92'0E.:0=^ G_?BD!V\K!UH;O)T-EUXOX1Q69\AW/B//\9R._:1OAKM)5SK_
MISY]M_J!&7Y;$[[A\U_A2QG-@$J.S5]Y1L0#^OU=Q:!K"97XTZ,0M J!40CZ
MJZZK<&I@9(#ZE-N,D\")E"N;_<_Q,BI*@B \C)J\C/+".'*]P[!I1YCCQ+';
MAAWD&+8YAKTYID_J",3H1!_FP,LG]&V*K@"7LL@PA],>%Z-6(?J@[Q2W"O$[
MO].T!H;[IOEQF'1[-FCU!KUZ-Z0LR8IQ4"=1A7L22%K"Y(,L<IWG$]1YITEI
M@SRLYG!P5*8=45[B#^*C,NT*&_AA<&2YO=<,5.$M31<6*&-K*NLSH%UM._V%
MZ6]'ZY?N>>IVK$_TS< TGV?Z^EIQ@_F24(%*6"@IYRQ6Y<'K3EU/)%N95G3/
MI&HN9EBHVPUP':#>+QB3NXD6:.]+XW]02P,$%     @ :X9E4;91.4<C P
MS@<  !D   !X;"]W;W)K<VAE971S+W-H965T-#,N>&UL?55=;]L@%/TKR-I#
M*ZVU'>>K51*I239M#Y6JIMV>L7T=HV+P "?M?OTNV&%IF_@E,7#/N><>+C#;
M2_6B2P!#7BLN]#PHC:EOPU!G)5147\L:!*X44E74X%!M0UTKH+D#53P<1-$X
MK"@3P6+FYA[48B8;PYF !T5T4U54O2V!R_T\B(/#Q"/;EL9.A(M93;>P ?-<
M/R@<A9XE9Q4(S:0@"HIY<!??KJ8VW@7\8K#71]_$5I)*^6('/_-Y$%E!P"$S
MEH'BWPY6P+DE0AE_.L[ I[3 X^\#^W=7.]:24@TKR7^SW)3S8!J0' K:</,H
M]S^@JV=D^3+)M?LE^RXV"DC6:".K#HP**B;:?_K:^7 $0)[3@$$'&'P$#,\
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
MYM$Z%=_HY@]2=\@M^&8TY>5?L*FPGCL"LS47-*N#I8(LR:O_T<]Z(+8"X%
MJ@-0-\ ;",!U0#ER5J6L[-9U)*+)F-$-8 5:LA47Y=B4T;(W25Y,XYU@\M=$
MQHG)[Y3&FR1-093'X"874;Y('E,"+CDG@H.3:R*B)#T%9^#A[AJ<?#H%GT"2
M@_LE77,9PL>6D"H*+FM6MWA5M8@&6@S!5YJ+)0>_YC&)-?%3<SQ$!@)+=K\9
M _0Z!E?(R'A'5N< V[\ 9"-;)\@<?DUF,AP6X3 TR,'-E."2#P_P]6?A[R\2
M FX$R?@_A@:<I@&G;, 9FG-&.0?3B+&7)%^ [U&Z)KIYK%B\DJ6P@^<)\K ;
MX+'UO#TZ&I@3>%NPEDBW$>D>1&3%XK9$.J@G4@-S0CPDTFM$>D:1E[/9.ENG
MD2 QN,PH$\E_4>%..J%>3\&9$P1AT!&J@6$YF% OU&^$^@<3ZN\G5 ,S" T:
MH8%1Z)^R<NV>]* _F]#Q K<C40>#@8OT$L-&8G@ B6%_54 7]R3J8,@=D@AM
M9>NV4>2/LGX5L_U,F*S'X(&3^3H%7Y(Y 2?2P5](Q/BIUK[-S-"K8K7._9[0
M=@^W"A<TDMVS*)9;&O9D8D.*#1W'=*&R=8@/XF@US79.^+;=R9L=H+9$51B@
MN3+LE]HUB6L6: :U!:JB ,U5X9[,ECE-Z>)%[DAB\BRWH2OC'@ J*X?>D3)
MF3 TN_#>&=#WUL"%H=<=8@T,02\<&&1EP=#LP6\I%K#OL6<0VZ[3U:K!A=Z@
M5N7%\!!F#/LVZ\N*@;HB=3!W*&N1,F-T-#/>P0R#83/>%1KN-&.DS!B9S?A6
M)DLNC%S*BM&1K!@I*T:'L6+4=UGD=)UN!Z@M45DQ,EOQ6Q8AZF_!SS0Z=Z#:
M0I4E([,E?R2YS<RFW'Y'9+M_JBX@\QY_6KZ$$P882<L9X,MD9:16]0#Y1\IT
MY>7([.5[9WK02P[H(XRZ^U4=SK.#+5Q;J#)R9#;R-^5[J'GWP($'NV(U..1Z
MSL#N&BM#QV;OW*_JU"2ML<*!XW5KHQ;GPJ&74ZQ<&9M=^0-+<P<S=(?7YKM"
MVSU4M0*C#[\$X*T/+T?Z\H*5K>/#?'O!?;-V;+^[8=&@L#_T\HB5I6.S?;YE
M+>+^EY4S)^C6'AT*XZ$$5]Z,S=Z\YSKT^J/DAKVQU* <.+!!Q<KCL7G/_Y$U
M:&;6;^#JSIA#D;U[#:H2@\TEYB^QE-4Q:=:.D575 QP>Z2NH<G''[.)[?P?5
M^+/O=E-<A_)"7Y\_CO)PQVR7;UF+-57[90QYO0^V&ECH#"E57NR8O7B_Q5B3
MM(PM\+L*^Z#M 6\+5/;NF'?]'UB*.YCQ\$I\3V35/VOK5$?N/Q?E81<',[K.
M177 TSQM#M0NRV,D2\&KT[BO$5LD.0<IF<M0^]R7<\^J Z[J1M!5>4;T2(7<
M[):72R)+*RL \O<YI>+UIFB@.6:<_ ]02P,$%     @ :X9E42,4QNN+ @
MN@8  !D   !X;"]W;W)K<VAE971S+W-H965T-#@N>&ULI55;3]LP%/XK5K0'
MD$9SA5&41NJ-#0DD1,7V,.W!;4X;"\?.;)>P_?H=.VG60ENA[26QC[_O.Q>?
MG*2U5$^Z ##DI>1"#[S"F.K*]_6B@)+JGJQ X,E2JI(:W*J5KRL%-'>DDOM1
M$%SX)67"RU)GNU=9*M>&,P'WBNAU65+U:P1<U@,O]#:&![8JC#7X65K1%<S
M/%;W"G=^IY*S$H1F4A %RX$W#*^FB<4[P%<&M=Y:$YO)7,HGN[G)!UY@ P(.
M"V,5*+Z>80R<6R$,XV>KZ74N+7%[O5&_=KEC+G.J82SY-Y:;8N!=>B2')5US
M\R#K+]#F<V[U%I)K]R1UBPT\LEAK(\N6C!&43#1O^M+688N .OL)44N(7A.2
M X2X)<3O]9"TA.2]'LY;@DO=;W)WA9M00[-4R9HHBT8UNW#5=VRL%Q.V3V9&
MX2E#GLD^2YG7C'-"14YNA*%BQ>8<R%!K,)J<D6&>,WNEE.-QTY?V@D\F8"CC
MIXAXG$W(R8=3\H$P0>Y0"\]UZAN,SOKP%VTDHR:2Z$ D,;F3PA2:3$4.^1[^
MY#B_?X3O8U6ZTD2;THRBHX(SJ'HD#CZ2*(B"/?&,WTT/^_O2^3_OTW_VOE.,
MN.N3V.G%!_2NF6 &SF[QJ][IDUM&YXQCAX FWV^11&X,E/K'$9=)YS)Q+I,#
M+H>E5(;];OH-7G R:MC75HW*A5.Q8_$Y2U+_>?NB&L3E%B+N]7<QD[>8,.Q=
M[H*F;T']WD6':;+TMS[&$M3*34%-%G(M3%/OSMH-VJ&;+Z_LH_!J'.ZQ3W P
M-W/TKWPSU>^H6C&A"8<EN@IZGW!6J&92-ALC*S<*YM+@8''+ G\NH"P SY=2
MFLW&.NA^5]D?4$L#!!0    ( &N&95$@PQR$I (  $('   9    >&PO=V]R
M:W-H965T<R]S:&5E=#0Y+GAM;(V5;4_;,!#'OXH5\0*DC3RG"6HK01D:$I,0
MA>W%M!=N>VTL'+NSKY3MT\]V0E:&2_>F\</][W=WM<_#K52/N@9 \MQPH4=!
MC;@^"T,]KZ&A^E2N09B=I50-13-5JU"O%="%$S4\3**H"!O*1# >NK5;-1[*
M#7(FX%81O6D:JGY= )?;41 '+PMW;%6C70C'PS5=P13P87VKS"SLO2Q8 T(S
M*8B"Y2@XC\\FE;5W!E\9;/7.F-A,9E(^VLGU8A1$-B#@,$?K@9K/$TR <^O(
MA/&S\QGT2"O<';]XOW*YFUQF5,-$\F]L@?4H* .R@"7=<+R3V\_0Y9-;?W/)
MM?LEV\XV"LA\HU$VG=A$T##1?NES5X<=09SM$22=(/E?0=H)4I=H&YE+ZY(B
M'0^5W!)EK8TW.W"U<6J3#1/V7YRB,KO,Z'!\WDB%[#=U-?WT; Z'!F(.!^DV
M8$&N!5*Q8C,.Y%QK0$V.+P$IXR?D(WF87I+CHQ-R1)@@][7<:"H6>ABBB<T2
MPGD7QT4;1[(GCBFL3TD:?2!)E$0>^>1]^27,C3RV\KAZ+0]-1?JR)'U9$N<O
MW>/OB@F&\/'&'+%7!;AA=,8X0P::?+\Q(G*-T.@?[R#3'IDZ9+8':1,GQPKL
MU6-B1;!6 *21 FM]XBMHZZYP[NQE?1JG59$-PR=/$%D?1'8HB-C':E7Y#BO.
MRSSWP_(>EA^")3Y8[H6E?EC1PXI#L-0'*SRP05;Y88,>-C@$RWRP@0>65*4?
M5O:P\A L)^;6F1,#II$O$92/7;YE9X.J*/SPJH=7[\+O)5+NPU5O3F<29T7Y
M]\BTU]IG%I=Y\D]4X4Z'LZ_+%ZI63&C"86F$T>G Y*7:CMU.4*Y=TYM)-"W4
M#6OSR(&R!F9_*26^3&P?[9_-\1]02P,$%     @ :X9E47/(D(ES @  / 8
M !D   !X;"]W;W)K<VAE971S+W-H965T-3 N>&ULC55=3]LP%/TK5L0#2-!\
MAX+22*,5&M(F(0KC8=J#26X;"\?.;*>!?S_;2:/2IM5>&CL^Y]QS[%PW;;EX
MER6 0A\597+FE$K5MZXK\Q(J+">\!J975EQ46.FI6+NR%H +2ZJH&WA>XE:8
M,"=+[;M'D:6\490P>!1(-E6%Q><=4-[.'-_9OG@BZU*9%VZ6UG@-2U O]:/0
M,W=0*4@%3!+.D(#5S/GFW\X3@[> 7P1:N3-&)LD;Y^]F\E#,',\8 @JY,@I8
M/S8P!TJ-D+;QM]=TAI*&N#O>JM_;[#K+&Y8PY_25%*J<.5,'%;#"#55/O/T.
M?9[8Z.6<2ON+V@X;:W#>2,6KGJP=5(1U3_S1[\,.P8^.$(*>$/PO(>P)H0W:
M.;.Q%ECA+!6\1<*@M9H9V+VQ;)V&,'.*2R7T*M$\E2WU9U$T%!!?H0>V ::X
M("#1^0(4)O0"7:&7Y0*=GUV@,T08>BYY(S$K9.HJ7=Z(N'E?ZJXK%1PK!?4$
MA=XE"KS &Z'/3],7D&NZ;^C^S5>ZJT,/R8,A>6#UPB-ZV[2?Z/</O80>%%3R
MSPGA<! .K7!T1/@)M_J$% B"Z>@V=?3$TDV7;;(HT*%2=[.[&X>HX"8,I@/J
MB[=H\!:=]/:J>^J*L*M:\!SDJ+M.(-ZIF_@WP9ZY0] T3+QQ;_'@+3[I[9XP
MHC_D FES19.K47?Q0>'0\\/IGKU#E'_M1]&XOV3PEYST]\P5IKH'AB:Y1 S4
MF,GDX.BNIW&X?\"'J#B:AL&>27>GM\V]^A.+-6$245AIGC>YUBE%=U=U$\5K
MV^YO7.G+PPY+?;V#, "]ON)<;2?F!AG^,+)_4$L#!!0    ( &N&95$$K-%E
M9 ,  /L*   9    >&PO=V]R:W-H965T<R]S:&5E=#4Q+GAM;)V6W6_3,!#
M_Q4KX@&DL<3Y#FHKL0X$$HB*;?" >/"22V.1Q,%VUO'?8R=9UB5NAGAI[>0^
M?G>^G&]U8/R7*  DNJ_*6JRM0LKFC6V+M("*B'/60*W>Y(Q71*HMW]NBX4"R
M3JDJ;==Q0KLBM+8VJ^[9CF]6K)4EK6''D6BKBO _%U"RP]K"UL.#KW1?2/W
MWJP:LH<KD#?-CJN=/5K): 6UH*Q&'/*U]1:_V6)/*W02WR@<Q-$:Z5!N&?NE
M-Q^SM>5H(B@AE=H$47]WL(6RU)84Q^_!J#7ZU(K'ZP?K[[O@53"W1,"6E=]I
M)HNU%5LH@YRTI?S*#A]@""C0]E)6BNX7'7K9T+=0V@K)JD%9$52T[O_)_9"(
M(P5\2L$=%-Q_5? &A2YS=D_6A75))-FL.#L@KJ65-;WH<M-IJVAHK8_Q2G+U
MEBH]N=EQ51%<_CE#NY+4$I$Z0^]^M[111R71RTN0A):OT&MT<W6)7KYXA5X@
M6J/K@K5"B8J5+16$-F6G@\.+WJ%[PN$5-.?(<\Z0Z[B.07V[K'X)J5+'6ATG
M3]5M%?H8OSO&[W;VO/^*_\<G)8X^2JC$SP5GWNC,ZYSY)YQ]4M9-&>NUPDY+
M?W=W&^RXWLJ^.\[+,T)/@/P1R%\$NFAIF=%Z;SS'7C4X<IC$R01J+A.%OIDI
M&)F"Y22!^BH+5F:(5@UG=Z!/P@@8S)R[212%$T2#E)<X@1DR'"'#1<BQ1$Q<
MX<RC<ICX$RZ#5.@&D9DK&KFB1:[W+:^I;#F<H9S>ZX7H2IKE.4T!P1)V- .*
MG2"84,^%0@^[9NAXA(X7H;>L:EH)'!6$9P?"H4,6+)=Z8T*-9Q38]\-XPCJ7
MBF/LF%F3D35YAK46DK?]':0ZH:K0O4JRL3Z3>:Y\/"U/@U#DG*@"[#QV=6<1
M\XLL@!N;LS,O.W^:.(-0$)Y .KIH\"+2-9.DU/D:^FTS]MO%JARL/CEKQ\'A
MM!,9Y&(O]DXT(_QX/V#WF78DA+K^WJ9I6[4ED9"I*4%-3"DEN@:,R.X,Y;7O
MQWC: 4QR7N!%R0GFQVL&+]\S_Y#J,U2#.=_S>R8(O%D?,(CYL1],VZI]-)GH
ML? SX7M:"U1"KO2<\T@%S_M)J]](UG3#RBV3:O3IEH6:3H%K ?4^9TP^;/3\
M,\Z[F[]02P,$%     @ :X9E4;LU*WE2 @  / 8  !D   !X;"]W;W)K<VAE
M971S+W-H965T-3(N>&ULI55;;]HP%/XK5M2'5MIP+G2E*$0"PK0^(*&B;L\F
M.1"KCIW9AG3_?K83,L9-:'LA]O'W?>=BGT-<"_FN"@"-/DK&U<@KM*Z&&*NL
M@)*HGJB FY.UD"719BLW6%422.Y()<.A[W_!):'<2V)G6\@D%EO-*(>%1&I;
MED3^F@ 3]<@+O+WAE6X*;0TXB2NR@27HMVHAS0YW*CDM@2LJ.)*P'GGC8#B+
M+-X!OE.HU<$:V4Q60KS;S4L^\GP;$##(M%4@YK.#*3!FA4P8/UM-KW-IB8?K
MO?I7E[O)94443 7[07-=C+R!AW)8DRW3KZ+^!FT^CU8O$TRY7U2W6-]#V59I
M4;9D$T%)>?,E'VT=#@A&YSPA; GA,:%_@1"UA.A6#_V6T+_5PV-+<*GC)G=7
MN)1HDL12U$A:M%&S"U=]QS;UHMR^DZ66YI0:GDZF@BO!:$XTY&A"&.$9H*5[
MH9_1.,^IO4["T MOWJ2]W/L4-*'LP2#>EBFZOWM =XAR-*>,F7,58VTBL_HX
M:Z.8-%&$%Z*(T%QP72@TXSGD9_CI=?[S%3XV%>G*$N[+,@FO"BZAZJ'(_X1"
M/_3/Q#.]F1X\GTOG_[S/_MG[7\6(NC<2.;W^!;T4S C*J+O\<W?;L >.;>?2
M+@E[@QCO#NMUB@F.,>DIYND8,SO%//;"#M.DAP_:H02Y<7-(H4QLN6ZR[JS=
MJ!N[#C^R3X+A-#AC3\UH;";9'_EFKLZ)W%"N$(.U<>7WGDRWRF96-1LM*M>,
M*Z%-:[ME8<8[2 LPYVLA]'YC'71_&,EO4$L#!!0    ( &N&95'8QTSB[0(
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
M<( P /U]Q[EZ7A@#S4^8Q;]02P,$%     @ :X9E4;M.GG3'!   O!(  !D
M  !X;"]W;W)K<VAE971S+W-H965T-3@N>&ULK5A1;]LV$/XKA-$!"=!8(F5;
M5N 8<)QNZT/1(&[2AV$/C'6VM4JB1E)V NS'CZ1DR8TIN@GR(HD4[^Z[X_$[
MDI,=XS_$!D"BIRS-Q55O(V5QZ7EBN8&,BCXK(%=_5HQG5*HF7WNBX$!C(Y2E
M'O']D9?1).]-)Z;OED\GK)1IDL,M1Z+,,LJ?KR%ENZL>[NT[[I+U1NH.;SHI
MZ!H6(.^+6ZY:7J,E3C+(1<)RQ&%UU9OARSD9:@$SXB&!G3CX1MJ51\9^Z,;G
M^*KG:T20PE)J%52]MC"'--6:%(Y_:Z6]QJ86//S>:__=.*^<>:0"YBS]GL1R
M<]4;]U ,*UJF\H[M_H3:(0-PR5)AGFA7C0U)#RU+(5E6"RL$69)7;_I4!^)
M8.QW")!:@+P0P$&'0% +!,;1"IEQZX9*.IUPMD-<CU;:](>)C9%6WB2YGL:%
MY.IOHN3D=%%-'V(K]+4P@9WIP";R&9W=@*1)>HX^( ^)#>4@4)*C^SR1XJ/J
M5-_?-JP4-(_%Q),*C%;I+6O#UY5ATF$X0E]8+C<"?<ICB'^6]Y03C2=D[\DU
M<2I<0-%'@?\1$9_X]XL;=/;AO$5>/1UF@B9@@3$3=)BIHB30UU(*J5Q/\K5#
MZZ#1.C!:!R>TLE8KHA+=P!*R1^ HP-HO'*'_D,V3*CZ5B:$QH9?O=AH-P^$P
MFGA;"[1A VWHA/8'I[F$V&EY>&1Y%(VBL=WPJ#$\<AK^] 1\F8@3ID='IB\"
M/P@&@=UXV!@/WS(A*LED/2-UICG!A4?@0A)$>&#'-FZPC7\)&U0!HH\IO ';
M^ A;H*!%V(XM:K!%3FP/('2RJ(@I>(7B:M60#&U5MQWC&3YWPHPLJ16,QFU2
MFV%S-ZJ_\-^.18K]EBQ]Y^+_;JH"Q!>S+7!5Y= ^1]$M3Y;JJ1Q;:%=<U@ZH
M&;\7*;1$9V7BRDYX.-=^?]PQU9BT ,DO4L,)^Y4:'=P& /8'_5$7@I:,<?#+
M''$"0W",@03](.R T#(W?A-U6U?C"8B#8X@#W/<[J RW#([=%/X:PC@!L3(T
M.LRDKDEL>1Z/7K>J[D!O0'4@YVJ/P-56KZ0I^@8\0V=JU_$,E(MSUQ)K61Z_
M$\U;@^'6'59 48AB^NS:>N"6^/$[,;\5KEOWJ(:+QR?QML4 OW,UL.)VVVAP
M8Y15.TH26#RHRL0)7>XZ0=HZ0=QU8K9><UA3">BSRM]$'7J6Z(&FI:LND+8N
MD#?5!?MRMD6TUG^XBL,0^\2^D$E;#XB['KR*9ZS R/&F)!J2CHTD:<L$<9>)
M5^=A)\#@.'(#'(Y?[$9.P#F19KKT_-S3,CUQ,_V1YAJV6^H."L7WD$N!Y 90
M7II8J"/AMHH;J^>5"MUIB5:1EB]%R_R%\''@N[3I8[F2RXW&5L]!MC> K'-'
MXW]*([)B'"GA1)WVJ]8*$EER0%QU&.OCW\P@NJ,\%FA=[V<4PISE%RJ-EZ6^
M94 I;"%%D!4I>P8EJ1,IZ!+M%.O;)MT[.+MGP-?F2D.@)2MS61W2FM[FVF1F
M+@M>]%_CRSFV]9/+N6W\C S4CX%58KB_F?%:2-6]SA?*UXK/E&LK!<_OARJS
M>'554C4D*\QMPR.3DF7F<P,T!JX'J/\KQN2^H0TT%U;3_P%02P,$%     @
M:X9E4;*.+J91 @  ,@8  !D   !X;"]W;W)K<VAE971S+W-H965T-3DN>&UL
MS57?;]- #/Y7K$A(0V)-EG;MF-I*^P5,&E"M AX0#]?$:4Z[RX4[=UG_^_DN
M650D6@G$ R^)[;,_?[8OSK0Q]L&5B 1/6E5N%I5$]7D<NZQ$+=S U%CQ26&L
M%L2J7<>NMBCR$*15G";).-9"5M%\&FP+.Y^:#2E9X<*"VV@M[/82E6EFT4GT
M8KB7ZY*\(9Y/:['&)=*7>F%9BWN47&JLG#056"QFT<7)^>7$^P>'KQ(;MR.#
MKV1ES(-7;O-9E'A"J# CCR#X]8A7J)0'8AH_.\RH3^D#=^47]'>A=JYE)1Q>
M&?5-YE3.HK,(<BS$1M&]:3Y@5\^IQ\N,<N$)3>L[>1M!MG%D=!?,#+2LVK=X
MZOJP$W RVA.0=@%IX-TF"BRO!8GYU)H&K/=F-"^$4D,TDY.5'\J2+)]*CJ/Y
MLAT&F (^UZ%/%[Y/DK9PM! 6*RJ19";4:SBZ1A*2A6.XT;4R6T18DLD>NLAI
M3$S(P\99E_RR39[N2X[U (;)&TB3-/DU/.8Z^F+2OI@TX(WVX%TTPN8.WEM1
M$>9 !CZ9ZOCF";.-GSW<X2.JGKP[D''89QR&C,-]%93<HV-_+7*X,IH_%2?:
M+EHFL4:^O@2K+>SZ+<0VF -;^'['D'!+J-V/ X1&/:'1P1;<.))\5SD-?[ %
M2MI8!,L&][OQ',8Z&R3)JP.<3GM.IW\XEK\9R;C/-OX_1C+I"4W^X4@.8PWW
MC23>60%^FWX4=BTK!PH+!DH&$QZ1;3=4JY"IPU98&>(=$\22ESI:[\#GA3'T
MHOA%T_\FYL]02P,$%     @ :X9E43IT_*@N!   X@T  !D   !X;"]W;W)K
M<VAE971S+W-H965T-C N>&ULM5=;;^I&$/XK(Y1*B=3$-VQ#1) (:=7S<'2B
M<)+S4/5A8P_@QMZENVL(4G]\9]?&),&85&I?P'N9;[ZY[.SL:"/DBUHB:G@M
M<JYN>DNM5]>.HY(E%DQ=B15R6ID+63!-0[EPU$HB2ZU0D3N^ZT9.P3+>&X_L
MW+T<CT2I\XSCO015%@63VUO,Q>:FY_5V$P_98JG-A#,>K=@"9Z@?5_>21DZ#
MDF8%<I4)#A+G-[V)=SWU8B-@=SQEN%%OOL&8\BS$BQE\26]ZKF&$.2;:0##Z
M6^,4\]P@$8^_:M!>H],(OOW>H?]JC2=CGIG"J<A_9*E>WO0&/4AQSLI</XC-
M;U@;%!J\1.3*_L*FWNOV("F5%D4M3 R*C%?_[+5VQ&<$_%K _R#@!4<$@EH@
ML(96S*Q9=TRS\4B*#4BSF]#,A_6-E29K,F[".-.25C.2T^-9%3X0<WA I666
M:$QAID7R H\\TS Q?L[T%L[O4+,LOX#+]IT*&$_A'J7-+9[@N[4SR#A\7XI2
MT2XU<C1Q-PR<I.9Y6_'TC_ <PE?!]5+!+SS%]+V\0S8WAOL[PV_]3L 9KJX@
M<'\&W_7=Q]D=G)]=J"63J#K @\:K@04/CH!_6YD<5?"MU$J3P1E?=*#V&]2^
M1>T?07WD:W(\.9UIN,,$BV>4$'C&!&_8YM(*+K1PYCROQW'0'P[Z(V?=0B-L
M:(2=-"8;)@]B4"D,#Q1Z@WC8]]L51HW"J%/AD[6Z35]TH._2]T/?/6)AW"B,
M.Q52@9AC1CH=?%UEDOX3D]!YWLXB;F/AA6$[B4%#8O#I:%.RZCK<=<:V\1@<
M\(CB,(SB=A[#AL?P$]ZWAYN\@?;4:P&&W.>I#0^IA6X_B!IJ=MNTF\GOWA\=
MI\AS]R7/[3R=/VQMQ_1RLD9)=Q75,W/AT2&%*14925=+R7+XCK* <RI;6V12
M772I?E-MO?\XJ"< @XH=]*&HZJ/O0LJV747,\_=L_?\_]"=T[ SP=P9X?HL!
M57J<@#J1'_OB[757[\EB(7'!-,(7RH:,6I8$GEA>8A?ZOHA[GZ_BAQZ$O^&L
MU8L5:/3F! V'41RTGVUO7\N][F+^KT-\E&!X2# <1N&'$WZ"SHD0FAOC_<R^
MI'O=-?T N:;=+?6 U!PKY-3!Z"4"+ZTOJ%FJ8ZALBU-6[8\R"RT>6^7E1_&2
MMP <!N 8HFE<4Z NV* V6&+?;;PGUAI'EOY96C'JUX  ,NJ)JY&Y^TJ)(&G"
M,AC\9#<Q<_$K6$C&:Y9<\$M\Q:0TO3CDN,8<L%CE8HM8]8/!,=&C8E=M">"\
MZ7 +E O;^"M(1,EUU;DTL\WC8F);Z@_SM^;1T3;O7T_;]D^\B 2B5J1X]WYQ
M]I2JU\]7)A=4-\BT.=%SKV+*>ED]**J!%BO;DS\+31V^_5S2(PREV4#K<R'T
M;F 4-,^Z\3]02P,$%     @ :X9E47":/$A@ @  7@8  !D   !X;"]W;W)K
M<VAE971S+W-H965T-C$N>&ULS551:]M #/XKPC#H8(U=)VU*20))VFV%;H2&
M;@]C#Q=;CH^>[[P[I6[^?747UV30!#;VL!=;TDF?/IUD>=08^^A*1(+G2FDW
MCDJB^BJ.759B)5S/U*CYI#"V$L2J7<>NMBCR$%2I.$V2B[@24D>34; M[&1D
M-J2DQH4%MZDJ8;<S5*891V?1J^%>KDORAG@RJL4:ET@/]<*R%G<HN:Q0.VDT
M6"S&T?3L:C;T_L'AF\3&[<G@*UD9\^B5VWP<)9X0*LS((PA^/>$<E?) 3.-7
MBQEU*7W@OOR*_C'4SK6LA,.Y4=]E3N4XNHP@QT)L%-V;YC.V]9Q[O,PH%Y[0
MM+Y)!-G&D:G:8&902;U[B^?V'O8"S@8' M(V( V\=XD"RVM!8C*RI@'KO1G-
M"Z'4$,WDI/9-69+E4\EQ-%GNF@&F@'MT9&5&F,.23/8(#UH23/VU2=K"R4)8
MU%0BR4RH]W!RC20D"Z=O1SH0.H<%VC Y.L/]LU%,3-Y3B+.6Z&Q'-#U$%.L>
M]),/D"9I\GMXS#5WA:==X6G &QS FS;"Y@X^6:$];S+PU>C3FV?,-GY.X Z?
M4,%-52NS171',O:[C/V0L7^H@I(O\-2/4 YS4_%GY428S*EE$FOD42=8;6'?
M;R&VP1S8PH\[AH1;PLK]/$)HT!$:'+V"&T>2YYK3<(L*E+2Q")8-;[;G.-9E
M+TG>'>%TWG$Z_\.V_$U++KIL%_]'2X8=H>$_;,EQK/ZAEL1[Z\)OWB_"KJ5V
MH+!@H*0WY!;9W3;;*63JL$%6AG@?!;'D'P!:[\#GA3'TJOBEU/U2)B]02P,$
M%     @ :X9E4?6"!-"8 @  .P8  !D   !X;"]W;W)K<VAE971S+W-H965T
M-C(N>&ULG57;;MI $/V5D=6'1$ICQY VC0")0"]((4)!:1^B/BSV8*^R%W=W
MP8G4C^_LVKA4(JC*"][+.3-G+CL,:FV>;(GHX%D*98=1Z5QU'<<V*U$R>ZXK
M5'2SUD8R1UM3Q+8RR/) DB).D^1#+!E7T6@0SA9F-- ;)[C"A0&[D9*9EQL4
MNAY&%]'NX)X7I?,'\6A0L0*7Z!ZJA:%=W%G)N41EN59@<#V,QA?7DTN/#X#O
M'&N[MP8?R4KK)[^9Y<,H\8)08.:\!4:?+4Y0"&^(9/QJ;4:=2T_<7^^L?PFQ
M4RPK9G&BQ0^>NW(87460XYIMA+O7]3=LXPD",RUL^(6ZQ2819!OKM&S)I$!R
MU7S9<YN'/0+9.4Q(6T+ZOX1>2^B%0!ME(:PI<VPT,+H&X]%DS2]";@*;HN'*
M5W'I#-URXKG11$O)'97%66 JAXE6CJL"5<;1PGL8YSGW^68"9JII&I_]DRDZ
MQL4I(1Z64SAY=PKO@"N8<R'HW@YB1^*\BSAKA=PT0M)7A/1@3JY+"Y]5COD!
M_N0X_],1?DQ)Z3*3[C)SDQXUN,3J''K)&:1)FAS2\V;Z/W)Z7:%ZP5[_%7MW
M7V]A)BMJ>QC#XQSE"LU/^ WW:)&9K S5F^*6WF7ERPEC8Q@5,JQW^",Z^IV.
M?M#1>U/#/-X2'&8.I3WF[+)S=GDTZ 5[:3PY#7=LRPOMFRS32K53H.:N!%=R
M"Y71A6'R#.J2^VP8I"&3:4/-X-EF/TWY7IKPF0:BQ8,=VXB["N+\.-R.DO-T
M$&_WN^ 0IM]AFJCCO?<IT11A;%F*8Z-<\U2[TVXRCL- B/_"F[$Z9Z;@RH+
M-5&3\X_DWS2CJMDX7877OM*.9D=8EC3=T7@ W:^U=KN-=]#]7XS^ %!+ P04
M    " !KAF51BUC0[J$"  !#!P  &0   'AL+W=O<FMS:&5E=',O<VAE970V
M,RYX;6R]55U/VS 4_2M6Q -(@SAIT[0HC=2634,"#5'8'J8]F.2VR?!'9CLM
M_'ML)PUEM)W$PUX:7]OGG'NNZ^MD+>2C*@ T>F*4J[%7:%V=^[[*"F!$G8D*
MN%E9",F(-J%<^JJ20'('8M0/,1[XC)3<2Q,W=R/31-2:EAQN)%(U8T0^3X&*
M]=@+O,W$;;DLM)WPTZ0B2YB#OJ]NI(G\CB4O&7!5"HXD+,;>)#B?!M@"W([O
M):S5UAA9*P]"/-K@,A][V&8$%#)M*8CYK& &E%HFD\>?EM3K-"UP>[QA_^+,
M&S,/1,%,T!]EKHNQ-_10#@M24WTKUE^A-119ODQ0Y7[1NMD;&\6L5EJP%FQB
M5O+F2Y[:0FP!PGV L 6$+N]&R&5Y031)$RG62-K=ALT.G%6'-LF5W)[*7$NS
M6AJ<3F<%X4M )4>3+*M938F&''W3!4@T$\R<=&&/8 7H2BB%CB] DY*>H",+
MN2M$K0C/5>)KDXME]+-6=]KHAGMT1^A:<%TH])GGD+_%^\9#9R3<&)F&!PGG
M4)VA'OZ$0ASB^_D%.CXZ.4#;Z^K3<[2]/;3_JLHESP0#=&RK<X)^7ADXNM3
MU*\#XOU.O._$^WO$IX02GL&NZC; @0/:F[=* QR-XL$P\5<[%*-.,?JH8@.,
MMA6#L#^,\6[%0:<X.*AH[I:Y.1S-:BF!9\_H3A*N3,'MG9WDO\T5,$U 'ZAF
MW"G%__\HAYWX\*.%';XK[&D0X3#>7==1)S@Z*-@XS-XXI,;9K@Q&[S*(>KB_
M6S_ KYT%?]1RB]S^^YZ.XK#WEZ2_U=<8R*7KWLJ8JKEN6EPWV[T0DZ8OOFYO
MGI=K(I<E5XC"PD#Q66S<RJ9C-X$6E>N2#T*;GNN&A7GE0-H-9GTAA-X$5J![
M-],74$L#!!0    ( &N&95'-DAJ@=@(   <(   9    >&PO=V]R:W-H965T
M<R]S:&5E=#8T+GAM;*55VX[:,!#]%2M2I5VI)5>Z"P(D;E61NA):>GFH^F"2
M@5CK2VJ;A?Y];2>D["JDE+XD]MCGS,P9:V:P%_))Y0 :'1CE:NCE6A=]WU=I
M#@RKCBB FY.-D QKLY5;7Q42<.9 C/I1$+SW&2;<&PV<;2E' ['3E'!82J1V
MC&'Y:P)4[(=>Z!T-CV2;:VOP1X,";V$%^DNQE&;GURP98< 5$1Q)V R]<=B?
M=^U]=^$K@;TZ62.;R5J()[M99$,OL $!A51;!FQ^SS %2BV1">-GQ>G5+BWP
M='UD_^!R-[FLL8*IH-](IO.A=^^A##9X1_6CV'^$*A\78"JH<E^T+^\F=QY*
M=TH+5H%-!(SP\H\/E0XG ,/3#(@J0/0:D)P!Q!4@OM1#4@&22SUT*X!+W2]S
M=\+-L,:C@11[).UMPV873GV'-GH1;M_)2DMS2@Q.CQ8\%0S09WP A=ZA<981
M6T!,T8*7K]"6\V8&&A-Z._"U\6F1?EKQ3TK^Z Q_C!X$U[E"<YY!UH"?M>-[
M+7C?Y%HG'!T3GD2MA"LH.B@.WJ(HB(*&>*87P\->4SK_YWU^M?<78L1U]6/'
M%U]2_>^?S"E::&#J1PMW4G,GCCLYPST5LA 2:T :'Y!=-+V>=HXH[ 3!FZ8J
M78F;78F;_SONA6C=6K1N*U%5$*O8S1HX;(B^1844S\0VYB8!V_G"^W,"MN."
MSEVS?NVP7J?;+-]?HXR;Y?-/.AL#N74C1:%4[+@NGWEMK:?6V#7K5_9)V)^&
M#?:9F7+E4/I#7X[(!RRWA"M$86-<&4%,#K(<.^5&B\+UU;70IDN[96XF-4A[
MP9QOA-#'C750S_[1;U!+ P04    " !KAF515OJ2^AL#  " #0  &0   'AL
M+W=O<FMS:&5E=',O<VAE970V-2YX;6RU5UUOVC 4_2M6GC:I:A)#::D J?1C
M0UHG5-9-T[0'DUR(5\=FMC- VH^?[4!"I6)@4EY(G/B>>^ZQ.;GN+85\41F
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
M1:H>-T 2X#I O5\QY>>FH6])[2\4BW\!4$L#!!0    ( &N&95';6RK1% 0
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
M[O'K^0E.4475N@N&L+=_X(14[*:;]6@VHIG5V]_-\OR5+=B_J:,_4$L#!!0
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
M\!4.SE=<52O+PL=ALUN6AWTHZU:I,SBWU!>&UW=;S>^VR;_[%U!+ P04
M" !KAF51K&U05SP"  "O*@  &@   'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR
M96QSS=K-:J-0&,;Q6PE>0,UYOVR'IJO9=%MZ Y*>?- DBL>A[=U/2!?)([.8
M3?%9R5%\_8/P0]3'EWQHQWUW*KM]7Q:?Q\.IK*K=./:_ZKJL=_G8EKNNSZ?S
MD4TW'-OQO!RV==^NW]MMKF6YC'JXG5$]/=[.7+Q^]?E_)G:;S7Z=?W?K/\=\
M&O\QN/[HAO>RRWFL%J_ML,WCJJH_#]?=I;YLTMUY<K5X?EM5P_-;JNJY@P2"
M9/X@A2"=/\@@R.8/<@CR^8,"@F+^H :"FOF#[B'H?OZ@!PAZF#\H+5'&)4'2
M!&L"K1-RG0B\3@AV(A [(=F)P.R$:"<"M1.RG0C<3@AW(I [(=V)P.Z$>"<"
MO07U%@*]!?46 KUE\K!-H+>@WD*@MZ#>0J"WH-Y"H+>@WD*@MZ#>0J"WH-Y"
MH+>@WD*@MZ+>2J"WHMY*H+>BWDJ@MTY>EA#HK:BW$NBMJ+<2Z*VHMQ+HK:BW
M$NBMJ+<2Z*VHMQ+H;:BW$>AMJ+<1Z&VHMQ'H;:BW$>AMDY?=!'H;ZFT$>AOJ
M;01Z&^IM!'H;ZFT$>AOJ;01Z.^KM!'H[ZNT$>COJ[01Z.^KM!'H[ZNT$>OOD
M8R6!WHYZ.X'>CGH[@=Z.>CN!WHYZ.X'>@7H'@=Z!>@>!WH%Z!X'>@7H'@=Z!
M>@>!WH%Z!X'>,?G9A$#O0+V#0.] O8- [T"]@T#O!O5N"/1N4.^&0.\&]6Y^
M4N\R?AURN?9\K_'Z/TGU>#XW7R]_67[OG-R7"\[U;45Y^@M02P,$%     @
M:X9E44!K%[H  @  QBD  !,   !;0V]N=&5N=%]4>7!E<UTN>&ULS=I-3L,P
M$ 7@JU39HL;U;P%1-L 66' !DTS;J$ELV0;*[7%20 )!!2H2;].HM3UOXI&^
M5<_NGCW%R;9K^[@HUBGY4\9BM:;.QM)YZO/*TH7.IOPUK)BWU<:NB(G9S+#*
M]8GZ-$U#C>+\[)*6]J%-DZMM_CDVKE\4@=I83"YV&X>L16&];YO*IKS.'OOZ
M4\KT-:',)\<]<=WX>)0W%.S+A&'E^X#7<S>/%$)3T^36AG1MN[R+;5L6TW-+
ML=Q?XHL>W7+95%2[ZJ'+1\KH ]DZKHE2UY:[HD?[DU.^8=I]\H/SQS+[ O/.
MV^!\S!,+]/NXMY$,IZ<^%Z*0FOVO^)Z82Q_\?C1,NZ;ZA]GY>I]<V(SSB&Q\
M''[''V?\7O^7?0B0/B1('PJD#PW2AP'I8P[2QS%('R<@?? 92B,HHG(44CF*
MJ1P%58ZB*D=AE:.XRE%@Y2BR"A19!8JL D56@2*K0)%5H,@J4&05*+(*%%D%
MBJP215:)(JM$D56BR"I19)4HLDH4626*K!)%5HDBJT*15:'(JE!D52BR*A19
M%8JL"D56A2*K0I%5H<BJ4635*+)J%%DUBJP:15:-(JM&D56CR*I19-4HLAH4
M60V*K 9%5H,BJT&1U:#(:E!D-2BR&A19#8JL<Q19YRBRSO]3UGOG-G\</S[+
MSC;]6SX;_[YY_@)02P$"% ,4    " !KAF51!T%-8H$   "Q    $
M        @ $     9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    ( &N&95%?
M-YN;[@   "L"   1              "  :\   !D;V-0<F]P<R]C;W)E+GAM
M;%!+ 0(4 Q0    ( &N&95&97)PC$ 8  )PG   3              "  <P!
M  !X;"]T:&5M92]T:&5M93$N>&UL4$L! A0#%     @ :X9E45[^>YXD!0
M314  !@              ("!#0@  'AL+W=O<FMS:&5E=',O<VAE970Q+GAM
M;%!+ 0(4 Q0    ( &N&95$8/YT1LP8  "L;   8              " @6<-
M  !X;"]W;W)K<VAE971S+W-H965T,BYX;6Q02P$"% ,4    " !KAF51<S/"
MN><"  ";"0  &               @(%0%   >&PO=V]R:W-H965T<R]S:&5E
M=#,N>&UL4$L! A0#%     @ :X9E4=&\3#?K!@  5QX  !@
M ("!;1<  'AL+W=O<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4 Q0    ( &N&
M95'5SOT'N @  (@O   8              " @8X>  !X;"]W;W)K<VAE971S
M+W-H965T-2YX;6Q02P$"% ,4    " !KAF51QNQ$SY("  !5!@  &
M        @(%\)P  >&PO=V]R:W-H965T<R]S:&5E=#8N>&UL4$L! A0#%
M  @ :X9E49$53-WR!P  R!\  !@              ("!1"H  'AL+W=O<FMS
M:&5E=',O<VAE970W+GAM;%!+ 0(4 Q0    ( &N&95&-V-]]7@@  $P5   8
M              " @6PR  !X;"]W;W)K<VAE971S+W-H965T."YX;6Q02P$"
M% ,4    " !KAF5179[:'S &  "Q#P  &               @($ .P  >&PO
M=V]R:W-H965T<R]S:&5E=#DN>&UL4$L! A0#%     @ :X9E42(3GR%9#0
M;"8  !D              ("!9D$  'AL+W=O<FMS:&5E=',O<VAE970Q,"YX
M;6Q02P$"% ,4    " !KAF51.<^J>$(.  "#*@  &0              @('V
M3@  >&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0    ( &N&95%8
MINYXUP4  *H-   9              " @6]=  !X;"]W;W)K<VAE971S+W-H
M965T,3(N>&UL4$L! A0#%     @ :X9E4?@_U4Q#"   214  !D
M     ("!?6,  'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q02P$"% ,4
M" !KAF51SV,M-E($  "M"0  &0              @('W:P  >&PO=V]R:W-H
M965T<R]S:&5E=#$T+GAM;%!+ 0(4 Q0    ( &N&95%K[Z>$!PX  +\N   9
M              " @8!P  !X;"]W;W)K<VAE971S+W-H965T,34N>&UL4$L!
M A0#%     @ :X9E4<HE"P+C"0  6QT  !D              ("!OGX  'AL
M+W=O<FMS:&5E=',O<VAE970Q-BYX;6Q02P$"% ,4    " !KAF51'-Y84^<#
M  ")"   &0              @('8B   >&PO=V]R:W-H965T<R]S:&5E=#$W
M+GAM;%!+ 0(4 Q0    ( &N&95%QN,6#FP(  ,4%   9              "
M@?:,  !X;"]W;W)K<VAE971S+W-H965T,3@N>&UL4$L! A0#%     @ :X9E
M435AY=!7!   YP@  !D              ("!R(\  'AL+W=O<FMS:&5E=',O
M<VAE970Q.2YX;6Q02P$"% ,4    " !KAF51=Z@)=O<%  !\$   &0
M        @(%6E   >&PO=V]R:W-H965T<R]S:&5E=#(P+GAM;%!+ 0(4 Q0
M   ( &N&95&@'DV?Z0(  #\&   9              " @82:  !X;"]W;W)K
M<VAE971S+W-H965T,C$N>&UL4$L! A0#%     @ :X9E43H^T+U$!0  %@T
M !D              ("!I)T  'AL+W=O<FMS:&5E=',O<VAE970R,BYX;6Q0
M2P$"% ,4    " !KAF51KPY[N*D'  !+$@  &0              @($?HP
M>&PO=V]R:W-H965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    ( &N&95%"$<,7
MF0@  $P6   9              " @?^J  !X;"]W;W)K<VAE971S+W-H965T
M,C0N>&UL4$L! A0#%     @ :X9E4=KVY&G!!0  0 \  !D
M ("!S[,  'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6Q02P$"% ,4    " !K
MAF51QP3+ %X$  !Y"@  &0              @(''N0  >&PO=V]R:W-H965T
M<R]S:&5E=#(V+GAM;%!+ 0(4 Q0    ( &N&95&FX;^MY (  )0&   9
M          " @5R^  !X;"]W;W)K<VAE971S+W-H965T,C<N>&UL4$L! A0#
M%     @ :X9E44KVU8CR!   GPP  !D              ("!=\$  'AL+W=O
M<FMS:&5E=',O<VAE970R."YX;6Q02P$"% ,4    " !KAF5116DC5!<$  !.
M"0  &0              @(&@Q@  >&PO=V]R:W-H965T<R]S:&5E=#(Y+GAM
M;%!+ 0(4 Q0    ( &N&95%]X.3NOP(  +<%   9              " @>[*
M  !X;"]W;W)K<VAE971S+W-H965T,S N>&UL4$L! A0#%     @ :X9E41!?
M;<]1!0   0X  !D              ("!Y,T  'AL+W=O<FMS:&5E=',O<VAE
M970S,2YX;6Q02P$"% ,4    " !KAF51^@C&PZ@"  "]!0  &0
M    @(%LTP  >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+ 0(4 Q0    (
M &N&95%;K7XWD@(  %@%   9              " @4O6  !X;"]W;W)K<VAE
M971S+W-H965T,S,N>&UL4$L! A0#%     @ :X9E4342(:,R P  ]P8  !D
M             ("!%-D  'AL+W=O<FMS:&5E=',O<VAE970S-"YX;6Q02P$"
M% ,4    " !KAF51.(^:C2\#  "=!P  &0              @(%]W   >&PO
M=V]R:W-H965T<R]S:&5E=#,U+GAM;%!+ 0(4 Q0    ( &N&95'<QBI,MP,
M $P,   9              " @>/?  !X;"]W;W)K<VAE971S+W-H965T,S8N
M>&UL4$L! A0#%     @ :X9E44_&C,)_!0  [!@  !D              ("!
MT>,  'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6Q02P$"% ,4    " !KAF51
M27FM.5@&  #)(   &0              @(&'Z0  >&PO=V]R:W-H965T<R]S
M:&5E=#,X+GAM;%!+ 0(4 Q0    ( &N&95'CCCLJ#@,  "X*   9
M      " @1;P  !X;"]W;W)K<VAE971S+W-H965T,SDN>&UL4$L! A0#%
M  @ :X9E4:2,CE7K @  :0@  !D              ("!6_,  'AL+W=O<FMS
M:&5E=',O<VAE970T,"YX;6Q02P$"% ,4    " !KAF51UK U[PL#   2"@
M&0              @(%]]@  >&PO=V]R:W-H965T<R]S:&5E=#0Q+GAM;%!+
M 0(4 Q0    ( &N&95%=;L^@YP(  #L)   9              " @;_Y  !X
M;"]W;W)K<VAE971S+W-H965T-#(N>&UL4$L! A0#%     @ :X9E4;91.4<C
M P  S@<  !D              ("!W?P  'AL+W=O<FMS:&5E=',O<VAE970T
M,RYX;6Q02P$"% ,4    " !KAF51UE C2CL"   M!0  &0
M@($W  $ >&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;%!+ 0(4 Q0    ( &N&
M95$#\#")V (  /<'   9              " @:D" 0!X;"]W;W)K<VAE971S
M+W-H965T-#4N>&UL4$L! A0#%     @ :X9E4<$6HYW^ @  &@D  !D
M         ("!N 4! 'AL+W=O<FMS:&5E=',O<VAE970T-BYX;6Q02P$"% ,4
M    " !KAF51-0]YWDT%  !R'   &0              @('M" $ >&PO=V]R
M:W-H965T<R]S:&5E=#0W+GAM;%!+ 0(4 Q0    ( &N&95$C%,;KBP(  +H&
M   9              " @7$. 0!X;"]W;W)K<VAE971S+W-H965T-#@N>&UL
M4$L! A0#%     @ :X9E42##'(2D @  0@<  !D              ("!,Q$!
M 'AL+W=O<FMS:&5E=',O<VAE970T.2YX;6Q02P$"% ,4    " !KAF51<\B0
MB7,"   \!@  &0              @($.% $ >&PO=V]R:W-H965T<R]S:&5E
M=#4P+GAM;%!+ 0(4 Q0    ( &N&95$$K-%E9 ,  /L*   9
M  " @;@6 0!X;"]W;W)K<VAE971S+W-H965T-3$N>&UL4$L! A0#%     @
M:X9E4;LU*WE2 @  / 8  !D              ("!4QH! 'AL+W=O<FMS:&5E
M=',O<VAE970U,BYX;6Q02P$"% ,4    " !KAF51V,=,XNT"  #("   &0
M            @('<' $ >&PO=V]R:W-H965T<R]S:&5E=#4S+GAM;%!+ 0(4
M Q0    ( &N&95'!6++!& @  ,(H   9              " @0 @ 0!X;"]W
M;W)K<VAE971S+W-H965T-30N>&UL4$L! A0#%     @ :X9E44F&?\J! @
MO@8  !D              ("!3R@! 'AL+W=O<FMS:&5E=',O<VAE970U-2YX
M;6Q02P$"% ,4    " !KAF51L7F' T,'  "V(P  &0              @($'
M*P$ >&PO=V]R:W-H965T<R]S:&5E=#4V+GAM;%!+ 0(4 Q0    ( &N&95$L
M-4^P;0,  ,X,   9              " @8$R 0!X;"]W;W)K<VAE971S+W-H
M965T-3<N>&UL4$L! A0#%     @ :X9E4;M.GG3'!   O!(  !D
M     ("!)38! 'AL+W=O<FMS:&5E=',O<VAE970U."YX;6Q02P$"% ,4
M" !KAF51LHXNIE$"   R!@  &0              @($C.P$ >&PO=V]R:W-H
M965T<R]S:&5E=#4Y+GAM;%!+ 0(4 Q0    ( &N&95$Z=/RH+@0  .(-   9
M              " @:L] 0!X;"]W;W)K<VAE971S+W-H965T-C N>&UL4$L!
M A0#%     @ :X9E47":/$A@ @  7@8  !D              ("!$$(! 'AL
M+W=O<FMS:&5E=',O<VAE970V,2YX;6Q02P$"% ,4    " !KAF51]8($T)@"
M   [!@  &0              @(&G1 $ >&PO=V]R:W-H965T<R]S:&5E=#8R
M+GAM;%!+ 0(4 Q0    ( &N&95&+6-#NH0(  $,'   9              "
M@79' 0!X;"]W;W)K<VAE971S+W-H965T-C,N>&UL4$L! A0#%     @ :X9E
M4<V2&J!V @  !P@  !D              ("!3DH! 'AL+W=O<FMS:&5E=',O
M<VAE970V-"YX;6Q02P$"% ,4    " !KAF515OJ2^AL#  " #0  &0
M        @('[3 $ >&PO=V]R:W-H965T<R]S:&5E=#8U+GAM;%!+ 0(4 Q0
M   ( &N&95%C?MIV/@0  *T0   9              " @4U0 0!X;"]W;W)K
M<VAE971S+W-H965T-C8N>&UL4$L! A0#%     @ :X9E4=M;*M$4!   <PX
M !D              ("!PE0! 'AL+W=O<FMS:&5E=',O<VAE970V-RYX;6Q0
M2P$"% ,4    " !KAF51J2S_W9T"  !1!P  &0              @($-60$
M>&PO=V]R:W-H965T<R]S:&5E=#8X+GAM;%!+ 0(4 Q0    ( &N&95$@+L='
M< (  !D&   9              " @>%; 0!X;"]W;W)K<VAE971S+W-H965T
M-CDN>&UL4$L! A0#%     @ :X9E43H$\)(1 P  # T  !D
M ("!B%X! 'AL+W=O<FMS:&5E=',O<VAE970W,"YX;6Q02P$"% ,4    " !K
MAF51K[1PEZ,"   5"   &0              @('080$ >&PO=V]R:W-H965T
M<R]S:&5E=#<Q+GAM;%!+ 0(4 Q0    ( &N&95&79GG:/@(  -($   9
M          " @:ID 0!X;"]W;W)K<VAE971S+W-H965T-S(N>&UL4$L! A0#
M%     @ :X9E43V<5G)% @  8 L   T              ( !'V<! 'AL+W-T
M>6QE<RYX;6Q02P$"% ,4    " !KAF51EXJ[',     3 @  "P
M    @ &/:0$ 7W)E;',O+G)E;'-02P$"% ,4    " !KAF51*%I3$AT&  "J
M+P  #P              @ %X:@$ >&PO=V]R:V)O;VLN>&UL4$L! A0#%
M  @ :X9E4:QM4%<\ @  KRH  !H              ( !PG ! 'AL+U]R96QS
M+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#%     @ :X9E44!K%[H  @  QBD
M !,              ( !-G,! %M#;VYT96YT7U1Y<&5S72YX;6Q02P4&
/ %  4 #G%0  9W4!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>84
<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>85
<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>86
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.20.2</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>214</ContextCount>
  <ElementCount>408</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>62</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>6</UnitCount>
  <MyReports>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>1001 - Document - Cover Page</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/CoverPage</Role>
      <ShortName>Cover Page</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>1002 - Statement - CONSOLIDATED BALANCE SHEETS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/ConsolidatedBalanceSheets</Role>
      <ShortName>CONSOLIDATED BALANCE SHEETS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>1003 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>CONSOLIDATED BALANCE SHEETS (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>1004 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>1005 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>1006 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>1007 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF CASH FLOWS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>1008 - Disclosure - Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SummaryOfSignificantAccountingPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>1009 - Disclosure - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/FairValueMeasurements</Role>
      <ShortName>Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>1010 - Disclosure - Acquisitions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/Acquisitions</Role>
      <ShortName>Acquisitions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>1011 - Disclosure - Revenue Recognition</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/RevenueRecognition</Role>
      <ShortName>Revenue Recognition</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>1012 - Disclosure - Credit Losses</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/CreditLosses</Role>
      <ShortName>Credit Losses</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>1013 - Disclosure - Goodwill and Intangible Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/GoodwillAndIntangibleAssets</Role>
      <ShortName>Goodwill and Intangible Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>1014 - Disclosure - Consolidated Balance Sheet Detail</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetail</Role>
      <ShortName>Consolidated Balance Sheet Detail</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>1015 - Disclosure - Convertible Senior Notes</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.repligencorp.com/role/ConvertibleSeniorNotes</Role>
      <ShortName>Convertible Senior Notes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>1016 - Disclosure - Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/StockholdersEquity</Role>
      <ShortName>Stockholders' Equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>1017 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/CommitmentsAndContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>1018 - Disclosure - Accumulated Other Comprehensive Loss</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLoss</Role>
      <ShortName>Accumulated Other Comprehensive Loss</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>1019 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>1020 - Disclosure - Earnings Per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/EarningsPerShare</Role>
      <ShortName>Earnings Per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>1021 - Disclosure - Related Party Transactions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/RelatedPartyTransactions</Role>
      <ShortName>Related Party Transactions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>1022 - Disclosure - Segment Reporting</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SegmentReporting</Role>
      <ShortName>Segment Reporting</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>1023 - Disclosure - Subsequent Events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SubsequentEvents</Role>
      <ShortName>Subsequent Events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>1024 - Disclosure - Summary of Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SummaryOfSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>24</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>1025 - Disclosure - Acquisitions (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/AcquisitionsTables</Role>
      <ShortName>Acquisitions (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/Acquisitions</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>1026 - Disclosure - Revenue Recognition (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/RevenueRecognitionTables</Role>
      <ShortName>Revenue Recognition (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/RevenueRecognition</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>1027 - Disclosure - Credit Losses (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/CreditLossesTables</Role>
      <ShortName>Credit Losses (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/CreditLosses</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>1028 - Disclosure - Goodwill and Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables</Role>
      <ShortName>Goodwill and Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/GoodwillAndIntangibleAssets</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>1029 - Disclosure - Consolidated Balance Sheet Detail (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetailTables</Role>
      <ShortName>Consolidated Balance Sheet Detail (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetail</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>1030 - Disclosure - Convertible Senior Notes (Tables)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.repligencorp.com/role/ConvertibleSeniorNotesTables</Role>
      <ShortName>Convertible Senior Notes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/ConvertibleSeniorNotes</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>1031 - Disclosure - Stockholders' Equity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/StockholdersEquityTables</Role>
      <ShortName>Stockholders' Equity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/StockholdersEquity</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>1032 - Disclosure - Accumulated Other Comprehensive Loss (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLossTables</Role>
      <ShortName>Accumulated Other Comprehensive Loss (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLoss</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>1033 - Disclosure - Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/IncomeTaxesTables</Role>
      <ShortName>Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/IncomeTaxes</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>1034 - Disclosure - Earnings Per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/EarningsPerShareTables</Role>
      <ShortName>Earnings Per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/EarningsPerShare</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>1035 - Disclosure - Segment Reporting (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SegmentReportingTables</Role>
      <ShortName>Segment Reporting (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/SegmentReporting</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>1036 - Disclosure - Fair Value Measurement - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail</Role>
      <ShortName>Fair Value Measurement - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>1037 - Disclosure - Acquisitions - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail</Role>
      <ShortName>Acquisitions - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>37</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>1038 - Disclosure - Acquisitions (Fair Value of Net Assets Acquired) (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail</Role>
      <ShortName>Acquisitions (Fair Value of Net Assets Acquired) (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/AcquisitionsTables</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>1039 - Disclosure - Acquisitions (Estimated Useful Life and Fair Value) (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail</Role>
      <ShortName>Acquisitions (Estimated Useful Life and Fair Value) (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/AcquisitionsTables</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>1040 - Disclosure - Acquisitions (Unaudited Supplemental Pro Forma Information) (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail</Role>
      <ShortName>Acquisitions (Unaudited Supplemental Pro Forma Information) (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/AcquisitionsTables</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>1041 - Schedule - Summary of Disaggregation of Product Revenues from Contracts with Customers by Major Product Line (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail</Role>
      <ShortName>Summary of Disaggregation of Product Revenues from Contracts with Customers by Major Product Line (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>1042 - Disclosure - Revenue from Significant Customers (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/RevenueFromSignificantCustomersDetail</Role>
      <ShortName>Revenue from Significant Customers (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>1043 - Disclosure - Summary of Receivables and Deferred Revenue from Contracts with Customers (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail</Role>
      <ShortName>Summary of Receivables and Deferred Revenue from Contracts with Customers (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>1044 - Disclosure - Credit Losses - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/CreditLossesAdditionalInformationDetail</Role>
      <ShortName>Credit Losses - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>1045 - Disclosure - Credit Losses - Summary Of Allowance For Credit Losses For Accounts Receivables (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/CreditLossesSummaryOfAllowanceForCreditLossesForAccountsReceivablesDetail</Role>
      <ShortName>Credit Losses - Summary Of Allowance For Credit Losses For Accounts Receivables (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>1046 - Disclosure - Changes in Carrying Value of Goodwill (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail</Role>
      <ShortName>Changes in Carrying Value of Goodwill (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>1047 - Disclosure - Goodwill and Intangible Assets (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail</Role>
      <ShortName>Goodwill and Intangible Assets (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables</ParentRole>
      <Position>47</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>1048 - Disclosure - Goodwill and Intangible Assets - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail</Role>
      <ShortName>Goodwill and Intangible Assets - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>1049 - Disclosure - Amortization Expense for Amortized Intangible Assets (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail</Role>
      <ShortName>Amortization Expense for Amortized Intangible Assets (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>1050 - Disclosure - Schedule of Inventories (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/ScheduleOfInventoriesDetail</Role>
      <ShortName>Schedule of Inventories (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>1051 - Disclosure - Property, Plant and Equipment (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail</Role>
      <ShortName>Property, Plant and Equipment (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>1052 - Disclosure - Consolidated Balance Sheet - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail</Role>
      <ShortName>Consolidated Balance Sheet - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>1053 - Disclosure - Schedule of Accrued Liabilities (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail</Role>
      <ShortName>Schedule of Accrued Liabilities (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>1054 - Disclosure - Convertible Senior Notes - Additional Information (Detail)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail</Role>
      <ShortName>Convertible Senior Notes - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>1055 - Disclosure - Convertible Senior Notes - Convertible Debt (Detail)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail</Role>
      <ShortName>Convertible Senior Notes - Convertible Debt (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>1056 - Disclosure - Stockholders' Equity - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail</Role>
      <ShortName>Stockholders' Equity - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>1057 - Disclosure - Stock-Based Compensation Expense (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail</Role>
      <ShortName>Stock-Based Compensation Expense (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>1058 - Disclosure - Summary of Option Activity (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SummaryOfOptionActivityDetail</Role>
      <ShortName>Summary of Option Activity (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>1059 - Disclosure - Summary of Option Activity (Parenthetical) (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail</Role>
      <ShortName>Summary of Option Activity (Parenthetical) (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>1060 - Disclosure - Summary of Restricted Stock Unit Activity (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail</Role>
      <ShortName>Summary of Restricted Stock Unit Activity (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>1061 - Disclosure - Summary of Restricted Stock Unit Activity (Parenthetical) (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail</Role>
      <ShortName>Summary of Restricted Stock Unit Activity (Parenthetical) (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>1062 - Disclosure - Commitments and Contingencies - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail</Role>
      <ShortName>Commitments and Contingencies - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>1063 - Disclosure - Change in Accumulated Other Comprehensive Loss (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail</Role>
      <ShortName>Change in Accumulated Other Comprehensive Loss (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>1064 - Disclosure - Income Taxes - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail</Role>
      <ShortName>Income Taxes - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>1065 - Disclosure - Summary of Tax Returns Periods Subject to Examination by Federal, State and International Tax Authorities (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail</Role>
      <ShortName>Summary of Tax Returns Periods Subject to Examination by Federal, State and International Tax Authorities (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>1066 - Disclosure - Earnings Per Share - (Additional Information) (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail</Role>
      <ShortName>Earnings Per Share - (Additional Information) (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/EarningsPerShareTables</ParentRole>
      <Position>66</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>1067 - Disclosure - Earnings Per Share - (Reconciliation of Basic and Diluted Shares Amounts) (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail</Role>
      <ShortName>Earnings Per Share - (Reconciliation of Basic and Diluted Shares Amounts) (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/EarningsPerShareTables</ParentRole>
      <Position>67</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>1068 - Disclosure - Related Party Transactions - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail</Role>
      <ShortName>Related Party Transactions - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>68</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>1069 - Disclosure - Segment Reporting - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail</Role>
      <ShortName>Segment Reporting - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>1070 - Disclosure - Segment Reporting - (Percentage of Revenue by Geographic Area) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails</Role>
      <ShortName>Segment Reporting - (Percentage of Revenue by Geographic Area) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.repligencorp.com/role/SegmentReportingTables</ParentRole>
      <Position>70</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>1071 - Disclosure - Segment Reporting - Percentage of Revenue from Significant Customers (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail</Role>
      <ShortName>Segment Reporting - Percentage of Revenue from Significant Customers (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report instance="d945763d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>1072 - Disclosure - Subsequent Events - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail</Role>
      <ShortName>Subsequent Events - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>72</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" original="d945763d10q.htm">d945763d10q.htm</File>
    <File>d945763dex311.htm</File>
    <File>d945763dex312.htm</File>
    <File>d945763dex321.htm</File>
    <File>rgen-20200930.xsd</File>
    <File>rgen-20200930_cal.xml</File>
    <File>rgen-20200930_def.xml</File>
    <File>rgen-20200930_lab.xml</File>
    <File>rgen-20200930_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy>http://fasb.org/srt/2019-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/country/2017-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://fasb.org/us-gaap/2019-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/dei/2019-01-31</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>89
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "d945763d10q.htm": {
   "axisCustom": 0,
   "axisStandard": 24,
   "contextCount": 214,
   "dts": {
    "calculationLink": {
     "local": [
      "rgen-20200930_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "rgen-20200930_def.xml"
     ],
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-eedm-def-2019-01-31.xml",
      "http://xbrl.fasb.org/srt/2019/elts/srt-eedm1-def-2019-01-31.xml"
     ]
    },
    "inline": {
     "local": [
      "d945763d10q.htm"
     ]
    },
    "labelLink": {
     "local": [
      "rgen-20200930_lab.xml"
     ],
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-doc-2019-01-31.xml",
      "https://xbrl.sec.gov/dei/2019/dei-doc-2019-01-31.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "rgen-20200930_pre.xml"
     ]
    },
    "referenceLink": {
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-ref-2019-01-31.xml",
      "https://xbrl.sec.gov/dei/2019/dei-ref-2019-01-31.xml"
     ]
    },
    "schema": {
     "local": [
      "rgen-20200930.xsd"
     ],
     "remote": [
      "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",
      "https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd",
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd",
      "http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-roles-2019-01-31.xsd",
      "http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://xbrl.fasb.org/srt/2019/elts/srt-types-2019-01-31.xsd",
      "http://xbrl.fasb.org/srt/2019/elts/srt-roles-2019-01-31.xsd",
      "https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-types-2019-01-31.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "https://xbrl.sec.gov/currency/2019/currency-2019-01-31.xsd",
      "https://xbrl.sec.gov/exch/2019/exch-2019-01-31.xsd",
      "http://xbrl.sec.gov/naics/2017/naics-2017-01-31.xsd",
      "http://xbrl.sec.gov/sic/2011/sic-2011-01-31.xsd",
      "https://xbrl.sec.gov/stpr/2018/stpr-2018-01-31.xsd",
      "http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/deprecated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-parts-codification-2019-01-31.xsd"
     ]
    }
   },
   "elementCount": 585,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2019-01-31": 2,
    "http://xbrl.sec.gov/dei/2019-01-31": 5,
    "total": 7
   },
   "keyCustom": 29,
   "keyStandard": 379,
   "memberCustom": 18,
   "memberStandard": 42,
   "nsprefix": "rgen",
   "nsuri": "http://www.repligencorp.com/20200930",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "1001 - Document - Cover Page",
     "role": "http://www.repligencorp.com/role/CoverPage",
     "shortName": "Cover Page",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1010 - Disclosure - Acquisitions",
     "role": "http://www.repligencorp.com/role/Acquisitions",
     "shortName": "Acquisitions",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1011 - Disclosure - Revenue Recognition",
     "role": "http://www.repligencorp.com/role/RevenueRecognition",
     "shortName": "Revenue Recognition",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CreditLossFinancialInstrumentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1012 - Disclosure - Credit Losses",
     "role": "http://www.repligencorp.com/role/CreditLosses",
     "shortName": "Credit Losses",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CreditLossFinancialInstrumentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1013 - Disclosure - Goodwill and Intangible Assets",
     "role": "http://www.repligencorp.com/role/GoodwillAndIntangibleAssets",
     "shortName": "Goodwill and Intangible Assets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1014 - Disclosure - Consolidated Balance Sheet Detail",
     "role": "http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetail",
     "shortName": "Consolidated Balance Sheet Detail",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1015 - Disclosure - Convertible Senior Notes",
     "role": "http://www.repligencorp.com/role/ConvertibleSeniorNotes",
     "shortName": "Convertible Senior Notes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1016 - Disclosure - Stockholders' Equity",
     "role": "http://www.repligencorp.com/role/StockholdersEquity",
     "shortName": "Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1017 - Disclosure - Commitments and Contingencies",
     "role": "http://www.repligencorp.com/role/CommitmentsAndContingencies",
     "shortName": "Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ComprehensiveIncomeNoteTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1018 - Disclosure - Accumulated Other Comprehensive Loss",
     "role": "http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLoss",
     "shortName": "Accumulated Other Comprehensive Loss",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ComprehensiveIncomeNoteTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1019 - Disclosure - Income Taxes",
     "role": "http://www.repligencorp.com/role/IncomeTaxes",
     "shortName": "Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1002 - Statement - CONSOLIDATED BALANCE SHEETS",
     "role": "http://www.repligencorp.com/role/ConsolidatedBalanceSheets",
     "shortName": "CONSOLIDATED BALANCE SHEETS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn12_31_2019",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:RestrictedCash",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1020 - Disclosure - Earnings Per Share",
     "role": "http://www.repligencorp.com/role/EarningsPerShare",
     "shortName": "Earnings Per Share",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1021 - Disclosure - Related Party Transactions",
     "role": "http://www.repligencorp.com/role/RelatedPartyTransactions",
     "shortName": "Related Party Transactions",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1022 - Disclosure - Segment Reporting",
     "role": "http://www.repligencorp.com/role/SegmentReporting",
     "shortName": "Segment Reporting",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1023 - Disclosure - Subsequent Events",
     "role": "http://www.repligencorp.com/role/SubsequentEvents",
     "shortName": "Subsequent Events",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1024 - Disclosure - Summary of Significant Accounting Policies (Policies)",
     "role": "http://www.repligencorp.com/role/SummaryOfSignificantAccountingPoliciesPolicies",
     "shortName": "Summary of Significant Accounting Policies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1025 - Disclosure - Acquisitions (Tables)",
     "role": "http://www.repligencorp.com/role/AcquisitionsTables",
     "shortName": "Acquisitions (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1026 - Disclosure - Revenue Recognition (Tables)",
     "role": "http://www.repligencorp.com/role/RevenueRecognitionTables",
     "shortName": "Revenue Recognition (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1027 - Disclosure - Credit Losses (Tables)",
     "role": "http://www.repligencorp.com/role/CreditLossesTables",
     "shortName": "Credit Losses (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1028 - Disclosure - Goodwill and Intangible Assets (Tables)",
     "role": "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables",
     "shortName": "Goodwill and Intangible Assets (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1029 - Disclosure - Consolidated Balance Sheet Detail (Tables)",
     "role": "http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetailTables",
     "shortName": "Consolidated Balance Sheet Detail (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1003 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)",
     "role": "http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical",
     "shortName": "CONSOLIDATED BALANCE SHEETS (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PreferredStockParOrStatedValuePerShare",
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD_per_Share",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConvertibleDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1030 - Disclosure - Convertible Senior Notes (Tables)",
     "role": "http://www.repligencorp.com/role/ConvertibleSeniorNotesTables",
     "shortName": "Convertible Senior Notes (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConvertibleDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1031 - Disclosure - Stockholders' Equity (Tables)",
     "role": "http://www.repligencorp.com/role/StockholdersEquityTables",
     "shortName": "Stockholders' Equity (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:ComprehensiveIncomeNoteTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1032 - Disclosure - Accumulated Other Comprehensive Loss (Tables)",
     "role": "http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLossTables",
     "shortName": "Accumulated Other Comprehensive Loss (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:ComprehensiveIncomeNoteTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SummaryOfIncomeTaxExaminationsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1033 - Disclosure - Income Taxes (Tables)",
     "role": "http://www.repligencorp.com/role/IncomeTaxesTables",
     "shortName": "Income Taxes (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SummaryOfIncomeTaxExaminationsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1034 - Disclosure - Earnings Per Share (Tables)",
     "role": "http://www.repligencorp.com/role/EarningsPerShareTables",
     "shortName": "Earnings Per Share (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1035 - Disclosure - Segment Reporting (Tables)",
     "role": "http://www.repligencorp.com/role/SegmentReportingTables",
     "shortName": "Segment Reporting (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1036 - Disclosure - Fair Value Measurement - Additional Information (Detail)",
     "role": "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
     "shortName": "Fair Value Measurement - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020_FairValueInputsLevel1MemberusgaapFairValueByFairValueHierarchyLevelAxis_MoneyMarketFundsMemberusgaapCashAndCashEquivalentsAxis",
      "decimals": "-5",
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1037 - Disclosure - Acquisitions - Additional Information (Detail)",
     "role": "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
     "shortName": "Acquisitions - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn06_30_2020_TrustForBenefitOfEmployeesMembersrtTitleOfIndividualAxis",
      "decimals": "-5",
      "lang": null,
      "name": "us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1038 - Disclosure - Acquisitions (Fair Value of Net Assets Acquired) (Detail)",
     "role": "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail",
     "shortName": "Acquisitions (Fair Value of Net Assets Acquired) (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020_CTechnologiesMemberusgaapBusinessAcquisitionAxis",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1039 - Disclosure - Acquisitions (Estimated Useful Life and Fair Value) (Detail)",
     "role": "http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail",
     "shortName": "Acquisitions (Estimated Useful Life and Fair Value) (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020_EngineeredMoldingTechnologyLlcMemberusgaapBusinessAcquisitionAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1004 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS)",
     "role": "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
     "shortName": "CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:BusinessAcquisitionProFormaInformationTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2019To09_30_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessAcquisitionsProFormaRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1040 - Disclosure - Acquisitions (Unaudited Supplemental Pro Forma Information) (Detail)",
     "role": "http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail",
     "shortName": "Acquisitions (Unaudited Supplemental Pro Forma Information) (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:BusinessAcquisitionProFormaInformationTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2019To09_30_2019_CTechnologiesMemberusgaapBusinessAcquisitionAxis",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessAcquisitionsProFormaRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "",
     "isDefault": "false",
     "longName": "1041 - Schedule - Summary of Disaggregation of Product Revenues from Contracts with Customers by Major Product Line (Detail)",
     "role": "http://www.repligencorp.com/role/SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail",
     "shortName": "Summary of Disaggregation of Product Revenues from Contracts with Customers by Major Product Line (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1042 - Disclosure - Revenue from Significant Customers (Detail)",
     "role": "http://www.repligencorp.com/role/RevenueFromSignificantCustomersDetail",
     "shortName": "Revenue from Significant Customers (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "rgen:ScheduleOfRevenueByMajorCustomersTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2019To09_30_2019_CytivaMembersrtMajorCustomersAxis",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsReceivableNetCurrent",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1043 - Disclosure - Summary of Receivables and Deferred Revenue from Contracts with Customers (Detail)",
     "role": "http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail",
     "shortName": "Summary of Receivables and Deferred Revenue from Contracts with Customers (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:DeferredRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsReceivableNetCurrent",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1044 - Disclosure - Credit Losses - Additional Information (Detail)",
     "role": "http://www.repligencorp.com/role/CreditLossesAdditionalInformationDetail",
     "shortName": "Credit Losses - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn06_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1045 - Disclosure - Credit Losses - Summary Of Allowance For Credit Losses For Accounts Receivables (Detail)",
     "role": "http://www.repligencorp.com/role/CreditLossesSummaryOfAllowanceForCreditLossesForAccountsReceivablesDetail",
     "shortName": "Credit Losses - Summary Of Allowance For Credit Losses For Accounts Receivables (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn12_31_2019",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn12_31_2019",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1046 - Disclosure - Changes in Carrying Value of Goodwill (Detail)",
     "role": "http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail",
     "shortName": "Changes in Carrying Value of Goodwill (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:GoodwillForeignCurrencyTranslationGainLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "rgen:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1047 - Disclosure - Goodwill and Intangible Assets (Detail)",
     "role": "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail",
     "shortName": "Goodwill and Intangible Assets (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "rgen:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1048 - Disclosure - Goodwill and Intangible Assets - Additional Information (Detail)",
     "role": "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail",
     "shortName": "Goodwill and Intangible Assets - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1049 - Disclosure - Amortization Expense for Amortized Intangible Assets (Detail)",
     "role": "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail",
     "shortName": "Amortization Expense for Amortized Intangible Assets (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn12_31_2018",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1005 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY",
     "role": "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity",
     "shortName": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn12_31_2018",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1050 - Disclosure - Schedule of Inventories (Detail)",
     "role": "http://www.repligencorp.com/role/ScheduleOfInventoriesDetail",
     "shortName": "Schedule of Inventories (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Land",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1051 - Disclosure - Property, Plant and Equipment (Detail)",
     "role": "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail",
     "shortName": "Property, Plant and Equipment (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Land",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1052 - Disclosure - Consolidated Balance Sheet - Additional Information (Detail)",
     "role": "http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail",
     "shortName": "Consolidated Balance Sheet - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1053 - Disclosure - Schedule of Accrued Liabilities (Detail)",
     "role": "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail",
     "shortName": "Schedule of Accrued Liabilities (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2019To09_30_2019",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProceedsFromConvertibleDebt",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1054 - Disclosure - Convertible Senior Notes - Additional Information (Detail)",
     "role": "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
     "shortName": "Convertible Senior Notes - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn07_19_2019_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMemberusgaapDebtInstrumentAxis",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:DebtInstrumentInterestRateStatedPercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ConvertibleDebtTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentCarryingAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1055 - Disclosure - Convertible Senior Notes - Convertible Debt (Detail)",
     "role": "http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail",
     "shortName": "Convertible Senior Notes - Convertible Debt (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ConvertibleDebtTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentCarryingAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn07_19_2019",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockSharesIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1056 - Disclosure - Stockholders' Equity - Additional Information (Detail)",
     "role": "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail",
     "shortName": "Stockholders' Equity - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn07_19_2019",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockSharesIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensation",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1057 - Disclosure - Stock-Based Compensation Expense (Detail)",
     "role": "http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail",
     "shortName": "Stock-Based Compensation Expense (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020_CostOfSalesMemberusgaapIncomeStatementLocationAxis",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn12_31_2019",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1058 - Disclosure - Summary of Option Activity (Detail)",
     "role": "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail",
     "shortName": "Summary of Option Activity (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_NonExecutiveMembersrtTitleOfIndividualAxis",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "rgen:PercentageOfSharesSubjectToForfeiture",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1059 - Disclosure - Summary of Option Activity (Parenthetical) (Detail)",
     "role": "http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail",
     "shortName": "Summary of Option Activity (Parenthetical) (Detail)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020_EmployeeStockOptionMemberusgaapAwardTypeAxis_NonExecutiveMembersrtTitleOfIndividualAxis",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "rgen:PercentageOfSharesSubjectToForfeiture",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2019To09_30_2019",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1006 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)",
     "role": "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical",
     "shortName": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2019To09_30_2019",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn12_31_2019_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1060 - Disclosure - Summary of Restricted Stock Unit Activity (Detail)",
     "role": "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail",
     "shortName": "Summary of Restricted Stock Unit Activity (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020_NonExecutiveMembersrtTitleOfIndividualAxis_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "rgen:PercentageOfSharesSubjectToForfeiture",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1061 - Disclosure - Summary of Restricted Stock Unit Activity (Parenthetical) (Detail)",
     "role": "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail",
     "shortName": "Summary of Restricted Stock Unit Activity (Parenthetical) (Detail)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020_NonExecutiveMembersrtTitleOfIndividualAxis_RestrictedStockAndPerformanceStockUnitsMemberusgaapAwardTypeAxis",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "rgen:PercentageOfSharesSubjectToForfeiture",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020_NGLImpactAMembersrtProductOrServiceAxis_ResearchAndDevelopmentArrangementMemberusgaapLongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermPurchaseCommitmentAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1062 - Disclosure - Commitments and Contingencies - Additional Information (Detail)",
     "role": "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
     "shortName": "Commitments and Contingencies - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020_NGLImpactAMembersrtProductOrServiceAxis_ResearchAndDevelopmentArrangementMemberusgaapLongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermPurchaseCommitmentAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn12_31_2019",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1063 - Disclosure - Change in Accumulated Other Comprehensive Loss (Detail)",
     "role": "http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail",
     "shortName": "Change in Accumulated Other Comprehensive Loss (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
       "us-gaap:ComprehensiveIncomeNoteTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn12_31_2019_AccumulatedTranslationAdjustmentMemberusgaapStatementEquityComponentsAxis",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
       "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
       "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
       "div",
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1064 - Disclosure - Income Taxes - Additional Information (Detail)",
     "role": "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail",
     "shortName": "Income Taxes - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
       "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
       "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
       "div",
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "us-gaap:SummaryOfIncomeTaxExaminationsTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020_EarliestTaxYearMemberusgaapTaxPeriodAxis_USsrtStatementGeographicalAxis",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OpenTaxYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1065 - Disclosure - Summary of Tax Returns Periods Subject to Examination by Federal, State and International Tax Authorities (Detail)",
     "role": "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail",
     "shortName": "Summary of Tax Returns Periods Subject to Examination by Federal, State and International Tax Authorities (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "us-gaap:SummaryOfIncomeTaxExaminationsTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020_EarliestTaxYearMemberusgaapTaxPeriodAxis_USsrtStatementGeographicalAxis",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OpenTaxYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "PAsOn09_30_2020",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1066 - Disclosure - Earnings Per Share - (Additional Information) (Detail)",
     "role": "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
     "shortName": "Earnings Per Share - (Additional Information) (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1067 - Disclosure - Earnings Per Share - (Reconciliation of Basic and Diluted Shares Amounts) (Detail)",
     "role": "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail",
     "shortName": "Earnings Per Share - (Reconciliation of Basic and Diluted Shares Amounts) (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:WeightedAverageNumberOfSharesRestrictedStock",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_shares",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020_SpectrumIncMemberusgaapBusinessAcquisitionAxis",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasesRentExpenseNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1068 - Disclosure - Related Party Transactions - Additional Information (Detail)",
     "role": "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
     "shortName": "Related Party Transactions - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020_SpectrumIncMemberusgaapBusinessAcquisitionAxis",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasesRentExpenseNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:NumberOfOperatingSegments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Segment",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1069 - Disclosure - Segment Reporting - Additional Information (Detail)",
     "role": "http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail",
     "shortName": "Segment Reporting - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:NumberOfOperatingSegments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Segment",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1007 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS",
     "role": "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows",
     "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:DepreciationAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R70": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1070 - Disclosure - Segment Reporting - (Percentage of Revenue by Geographic Area) (Details)",
     "role": "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails",
     "shortName": "Segment Reporting - (Percentage of Revenue by Geographic Area) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P07_01_2020To09_30_2020_GeographicConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     }
    },
    "R71": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2019To09_30_2019_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_CytivaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1071 - Disclosure - Segment Reporting - Percentage of Revenue from Significant Customers (Detail)",
     "role": "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail",
     "shortName": "Segment Reporting - Percentage of Revenue from Significant Customers (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2019To09_30_2019_CustomerConcentrationRiskMemberusgaapConcentrationRiskByTypeAxis_CytivaMembersrtMajorCustomersAxis_SalesRevenueNetMemberusgaapConcentrationRiskByBenchmarkAxis",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_pure",
      "xsiNil": "false"
     }
    },
    "R72": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "us-gaap:SubsequentEventsTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P10_27_2020To10_27_2020_ArtesynBiosolutionsMemberusgaapBusinessAcquisitionAxis_SubsequentEventMemberusgaapSubsequentEventTypeAxis",
      "decimals": "-6",
      "first": true,
      "lang": null,
      "name": "us-gaap:PaymentsToAcquireBusinessesGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1072 - Disclosure - Subsequent Events - Additional Information (Detail)",
     "role": "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail",
     "shortName": "Subsequent Events - Additional Information (Detail)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "us-gaap:SubsequentEventsTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P10_27_2020To10_27_2020_ArtesynBiosolutionsMemberusgaapBusinessAcquisitionAxis_SubsequentEventMemberusgaapSubsequentEventTypeAxis",
      "decimals": "-6",
      "first": true,
      "lang": null,
      "name": "us-gaap:PaymentsToAcquireBusinessesGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_USD",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1008 - Disclosure - Summary of Significant Accounting Policies",
     "role": "http://www.repligencorp.com/role/SummaryOfSignificantAccountingPolicies",
     "shortName": "Summary of Significant Accounting Policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "1009 - Disclosure - Fair Value Measurements",
     "role": "http://www.repligencorp.com/role/FairValueMeasurements",
     "shortName": "Fair Value Measurements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d945763d10q.htm",
      "contextRef": "P01_01_2020To09_30_2020",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 62,
   "tag": {
    "country_DE": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "definitionGuidance": "Germany",
        "label": "GERMANY"
       }
      }
     },
     "localname": "DE",
     "nsuri": "http://xbrl.sec.gov/country/2017-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "country_NL": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "NETHERLANDS",
        "terseLabel": "Netherlands"
       }
      }
     },
     "localname": "NL",
     "nsuri": "http://xbrl.sec.gov/country/2017-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "country_SE": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "SWEDEN",
        "terseLabel": "Sweden"
       }
      }
     },
     "localname": "SE",
     "nsuri": "http://xbrl.sec.gov/country/2017-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "country_US": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "UNITED STATES",
        "terseLabel": "United States"
       }
      }
     },
     "localname": "US",
     "nsuri": "http://xbrl.sec.gov/country/2017-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CoverAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Cover page.",
        "label": "Cover [Abstract]"
       }
      }
     },
     "localname": "CoverAbstract",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.",
        "label": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This is focus fiscal year of the document report in CCYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.",
        "label": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The end date of the period reflected on the cover page if a periodic report. For all other reports and registration statements containing historical data, it is the date up through which that historical data is presented.  If there is no historical data in the report, use the filing date. The format of the date is CCYY-MM-DD.",
        "label": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentQuarterlyReport": {
     "auth_ref": [
      "r377"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an quarterly report.",
        "label": "Document Quarterly Report"
       }
      }
     },
     "localname": "DocumentQuarterlyReport",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r378"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.",
        "label": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r379"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.",
        "label": "Entity Common Stock, Shares Outstanding"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "sharesItemType"
    },
    "dei_EntityCurrentReportingStatus": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains.",
        "label": "Entity [Domain]",
        "terseLabel": "Entity [Domain]"
       }
      }
     },
     "localname": "EntityDomain",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLoss",
      "http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLossTables",
      "http://www.repligencorp.com/role/Acquisitions",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/role/AcquisitionsTables",
      "http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail",
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail",
      "http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail",
      "http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail",
      "http://www.repligencorp.com/role/CommitmentsAndContingencies",
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetailTables",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotes",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesTables",
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail",
      "http://www.repligencorp.com/role/EarningsPerShareTables",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables",
      "http://www.repligencorp.com/role/IncomeTaxes",
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/IncomeTaxesTables",
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail",
      "http://www.repligencorp.com/role/RelatedPartyTransactions",
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail",
      "http://www.repligencorp.com/role/ScheduleOfInventoriesDetail",
      "http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail",
      "http://www.repligencorp.com/role/StockholdersEquity",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail",
      "http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail",
      "http://www.repligencorp.com/role/SummaryOfSignificantAccountingPolicies",
      "http://www.repligencorp.com/role/SummaryOfSignificantAccountingPoliciesPolicies",
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r379"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company",
        "terseLabel": "Emerging growth company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.",
        "label": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r379"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "filerCategoryItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r380"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).",
        "label": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r379"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r379"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r379"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business",
        "terseLabel": "Smaller reporting company"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r379"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_LegalEntityAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The set of legal entities associated with a report.",
        "label": "Legal Entity [Axis]",
        "terseLabel": "Legal Entity [Axis]"
       }
      }
     },
     "localname": "LegalEntityAxis",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLoss",
      "http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLossTables",
      "http://www.repligencorp.com/role/Acquisitions",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/role/AcquisitionsTables",
      "http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail",
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail",
      "http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail",
      "http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail",
      "http://www.repligencorp.com/role/CommitmentsAndContingencies",
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetailTables",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotes",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesTables",
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail",
      "http://www.repligencorp.com/role/EarningsPerShareTables",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables",
      "http://www.repligencorp.com/role/IncomeTaxes",
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/IncomeTaxesTables",
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail",
      "http://www.repligencorp.com/role/RelatedPartyTransactions",
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail",
      "http://www.repligencorp.com/role/ScheduleOfInventoriesDetail",
      "http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail",
      "http://www.repligencorp.com/role/StockholdersEquity",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail",
      "http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail",
      "http://www.repligencorp.com/role/SummaryOfSignificantAccountingPolicies",
      "http://www.repligencorp.com/role/SummaryOfSignificantAccountingPoliciesPolicies",
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r375"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r376"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CoverPage"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "rgen_AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Adjustments To Additional Paid In Capital Reduction For Equity Component Of Convertible Debt.",
        "label": "Adjustments To Additional Paid In Capital Reduction For Equity Component Of Convertible Debt",
        "verboseLabel": "Reduction for equity component from debt conversion, net of tax"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalReductionForEquityComponentOfConvertibleDebt",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_AmendmentAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amendment [Axis]",
        "label": "Amendment [Axis]",
        "terseLabel": "Amendment [Axis]"
       }
      }
     },
     "localname": "AmendmentAxis",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_AmendmentDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amendment [Domain]",
        "label": "Amendment [Domain]",
        "terseLabel": "Amendment [Domain]"
       }
      }
     },
     "localname": "AmendmentDomain",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_ApacOtherMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "APAC Other [Member]",
        "verboseLabel": "APAC/Other"
       }
      }
     },
     "localname": "ApacOtherMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_ArtesynBiosolutionsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "ARTeSYN Biosolutions",
        "label": "ARTeSYN Biosolutions [Member]",
        "terseLabel": "ARTeSYN Biosolutions [Member]"
       }
      }
     },
     "localname": "ArtesynBiosolutionsMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_AssetsAcquiredUnderOperatingLeases": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Assets acquired under operating leases.",
        "label": "Assets Acquired Under Operating Leases",
        "terseLabel": "Assets acquired under operating leases"
       }
      }
     },
     "localname": "AssetsAcquiredUnderOperatingLeases",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_BusinessCombinationConsiderationIndemnificationEscrow": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Business Combination Consideration Indemnification Escrow",
        "label": "Business Combination Consideration Indemnification Escrow",
        "terseLabel": "Business acquisition, Indemnification escrow"
       }
      }
     },
     "localname": "BusinessCombinationConsiderationIndemnificationEscrow",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Operating Accrued Bonus.",
        "label": "Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Accrued Bonus",
        "negatedLabel": "Accrued bonus"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedBonus",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities": {
     "auth_ref": [],
     "crdr": "credit",
     "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"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Business combination recognized identifiable assets acquired and liabilities assumed deferred tax liability current.",
        "label": "Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Deferred Tax Liability Current",
        "negatedLabel": "Deferred revenue"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilityCurrent",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent": {
     "auth_ref": [],
     "crdr": "credit",
     "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"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityCurrent",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent": {
     "auth_ref": [],
     "crdr": "credit",
     "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"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNonCurrent",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset": {
     "auth_ref": [],
     "crdr": "debit",
     "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"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of restricted cash, acquired at the acquisition date.",
        "label": "Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed Restricted Cash",
        "verboseLabel": "Restricted cash"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestrictedCash",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Tangible Assets",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Tangible Assets",
        "verboseLabel": "Business acquisition, net tangible assets acquired"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedTangibleAssets",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_CTechnologiesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "C Technologies [Member]",
        "terseLabel": "C Technologies, Inc.",
        "verboseLabel": "C Technologies"
       }
      }
     },
     "localname": "CTechnologiesMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/role/AcquisitionsTables",
      "http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail",
      "http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_CommitmentsAndContingenciesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Commitments and Contingencies [Line Items]",
        "label": "Commitments and Contingencies [Line Items]",
        "terseLabel": "Commitments and Contingencies [Line Items]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesLineItems",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_CommitmentsAndContingenciesTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Commitments and Contingencies [Table]",
        "label": "Commitments and Contingencies [Table]",
        "terseLabel": "Commitments and Contingencies [Table]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesTable",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_CommonStockIssuePricePerShare": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Common stock issue price per share.",
        "label": "Common Stock Issue Price Per Share",
        "terseLabel": "Common stock issue price per share"
       }
      }
     },
     "localname": "CommonStockIssuePricePerShare",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "rgen_ConvertibleNotesTransactionCostsOfEquityComponent": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Convertible notes transaction costs of equity component.",
        "label": "Convertible Notes Transaction Costs Of Equity Component",
        "verboseLabel": "Transaction costs attributable to equity component"
       }
      }
     },
     "localname": "ConvertibleNotesTransactionCostsOfEquityComponent",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_ConvertibleNotesTransactionCostsOfLiabilityComponent": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Convertible notes transaction costs of liability component.",
        "label": "Convertible Notes Transaction Costs Of Liability Component",
        "verboseLabel": "Transaction costs attributable to liability component"
       }
      }
     },
     "localname": "ConvertibleNotesTransactionCostsOfLiabilityComponent",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_CytivaMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Cytiva.",
        "label": "Cytiva [Member]",
        "terseLabel": "GE Healthcare",
        "verboseLabel": "Cytiva (formerly GE Healthcare)"
       }
      }
     },
     "localname": "CytivaMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/RevenueFromSignificantCustomersDetail",
      "http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_DebtInstrumentFaceAmountRemaining": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Debt instrument face amount remaining",
        "label": "Debt Instrument Face Amount Remaining",
        "terseLabel": "Face amount of remaining convertible debt"
       }
      }
     },
     "localname": "DebtInstrumentFaceAmountRemaining",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_DiscountRate": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Discount rate.",
        "label": "Discount Rate",
        "verboseLabel": "Discount rate"
       }
      }
     },
     "localname": "DiscountRate",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "rgen_EngineeredMoldingTechnologyLlcMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Engineered Molding Technology LLC",
        "label": "Engineered Molding Technology LLC [Member]",
        "terseLabel": "Engineered Molding Technology"
       }
      }
     },
     "localname": "EngineeredMoldingTechnologyLlcMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/role/AcquisitionsTables",
      "http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_FacilityAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Facility [Axis]"
       }
      }
     },
     "localname": "FacilityAxis",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_FacilityDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Facility [Domain]"
       }
      }
     },
     "localname": "FacilityDomain",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_FiniteLivedIntangibleLiabilitiesLineItems": {
     "auth_ref": [],
     "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]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleLiabilitiesLineItems",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_GoodwillAndOtherIntangibleAssetsDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "definitionGuidance": "Goodwill and Other Intangible Assets",
        "documentation": "Goodwill And Other Intangible Assets Disclosure abstract",
        "label": "Goodwill And Other Intangible Assets Disclosure [Abstract]",
        "verboseLabel": "Goodwill and Other Intangible Assets"
       }
      }
     },
     "localname": "GoodwillAndOtherIntangibleAssetsDisclosureAbstract",
     "nsuri": "http://www.repligencorp.com/20200930",
     "xbrltype": "stringItemType"
    },
    "rgen_IncomeTaxesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Income Taxes [Line Items]",
        "label": "Income Taxes [Line Items]",
        "terseLabel": "Income Taxes [Line Items]"
       }
      }
     },
     "localname": "IncomeTaxesLineItems",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_IncomeTaxesTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Income Taxes [Table]",
        "label": "Income Taxes [Table]",
        "terseLabel": "Income Taxes [Table]"
       }
      }
     },
     "localname": "IncomeTaxesTable",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_IncreasedecreaseInOperatingLeaseLiability": {
     "auth_ref": [],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 22.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in operating lease liability.",
        "label": "Increase Decrease in Operating Lease Liability",
        "terseLabel": "Operating lease liability"
       }
      }
     },
     "localname": "IncreasedecreaseInOperatingLeaseLiability",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_IncreasedecreaseInOperatingLeaseRightOfUseAsset": {
     "auth_ref": [],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 21.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "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"
       }
      }
     },
     "localname": "IncreasedecreaseInOperatingLeaseRightOfUseAsset",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_IndefiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indefinite Lived Intangible Assets Accumulated Amortization",
        "label": "Indefinite Lived Intangible Assets Accumulated Amortization",
        "negatedLabel": "Accumulated Amortization"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_IndefiniteLivedIntangibleAssetsNet": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indefinite Lived Intangible Assets Net",
        "label": "Indefinite Lived Intangible Assets Net",
        "verboseLabel": "Net Carrying Value"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsNet",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_IntangibleAssetsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Intangible Assets [Line Items]",
        "label": "Intangible Assets [Line Items]",
        "terseLabel": "Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "IntangibleAssetsLineItems",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_MilliporeSigmaMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Millipore Sigma.",
        "label": "Millipore Sigma [Member]",
        "terseLabel": "MilliporeSigma"
       }
      }
     },
     "localname": "MilliporeSigmaMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/RevenueFromSignificantCustomersDetail",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_NGLImpactAMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "NGL Impact A[Member]",
        "label": "NGL Impact A [Member]"
       }
      }
     },
     "localname": "NGLImpactAMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_NonEmployeeDirectorStockOptionMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Non Employee Director Stock Option[Member]",
        "label": "Non Employee Director Stock Option[Member]",
        "terseLabel": "Non-Employee Directors"
       }
      }
     },
     "localname": "NonEmployeeDirectorStockOptionMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_NonExecutiveMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Non-Executive [Member]",
        "label": "Non-Executive [Member]",
        "terseLabel": "Awards Granted to Non-Executive Level Employees"
       }
      }
     },
     "localname": "NonExecutiveMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_OptionToPurchaseAdditionalDebtFaceAmount": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Option to purchase additional debt face amount.",
        "label": "Option to Purchase Additional Debt Face Amount",
        "verboseLabel": "Additional Notes issued"
       }
      }
     },
     "localname": "OptionToPurchaseAdditionalDebtFaceAmount",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_PercentageOfSharesSubjectToForfeiture": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of shares subject to forfeiture.",
        "label": "Percentage of Shares Subject to Forfeiture",
        "terseLabel": "Estimated forfeiture rates"
       }
      }
     },
     "localname": "PercentageOfSharesSubjectToForfeiture",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "rgen_ReconciliationOfBasicAndDilutedSharesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Reconciliation of Basic and Diluted Shares [Abstract]"
       }
      }
     },
     "localname": "ReconciliationOfBasicAndDilutedSharesAbstract",
     "nsuri": "http://www.repligencorp.com/20200930",
     "xbrltype": "stringItemType"
    },
    "rgen_RestrictedStockAndPerformanceStockUnitsMember": {
     "auth_ref": [],
     "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"
       }
      }
     },
     "localname": "RestrictedStockAndPerformanceStockUnitsMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_RgenFacilityAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Rgen Facility [Axis]",
        "label": "Rgen Facility [Axis]"
       }
      }
     },
     "localname": "RgenFacilityAxis",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_RgenFacilityDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Rgen Facility [Domain]",
        "label": "Rgen Facility [Domain]"
       }
      }
     },
     "localname": "RgenFacilityDomain",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Risks and Uncertainties in Entities Business [Policy Text Block]",
        "label": "Risks and Uncertainties in Entities Business [Policy Text Block]",
        "terseLabel": "Risks and Uncertainties"
       }
      }
     },
     "localname": "RisksAndUncertaintiesInEntitiesBusinessPolicyTextBlock",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "rgen_ScheduleOfAccruedLiabilitiesLineItems": {
     "auth_ref": [],
     "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]"
       }
      }
     },
     "localname": "ScheduleOfAccruedLiabilitiesLineItems",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_ScheduleOfAccruedLiabilitiesTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule of Accrued Liabilities [Table]",
        "label": "Schedule of Accrued Liabilities [Table]",
        "terseLabel": "Schedule of Accrued Liabilities [Table]"
       }
      }
     },
     "localname": "ScheduleOfAccruedLiabilitiesTable",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_ScheduleOfEarningsPerShareBasicAndDilutedLineItems": {
     "auth_ref": [],
     "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]"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedLineItems",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_ScheduleOfEarningsPerShareBasicAndDilutedTable": {
     "auth_ref": [],
     "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]"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTable",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "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]",
        "verboseLabel": "Intangible assets"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsTableTextBlock",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "rgen_ScheduleOfIntangibleAssetsTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule of Intangible Assets [Table]",
        "label": "Schedule of Intangible Assets [Table]",
        "terseLabel": "Schedule of Intangible Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfIntangibleAssetsTable",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_ScheduleOfRelatedPartyTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule Of Related Party [Table]",
        "label": "Schedule Of Related Party [Table]",
        "terseLabel": "Schedule Of Related Party [Table]"
       }
      }
     },
     "localname": "ScheduleOfRelatedPartyTable",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_ScheduleOfRevenueByMajorCustomersTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule Of Revenue By Major Customers [Table Text Block]",
        "label": "Schedule Of Revenue By Major Customers [Table Text Block]",
        "terseLabel": "Revenue from Significant Customers"
       }
      }
     },
     "localname": "ScheduleOfRevenueByMajorCustomersTableTextBlock",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/RevenueRecognitionTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "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",
        "terseLabel": "Vested and expected to vest at September 30, 2020"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestNumber",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share based Compensation Arrangement by Share based Payment Award, Equity Instruments Other Than Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value",
        "label": "Share based Compensation Arrangement by Share based Payment Award, Equity Instruments Other Than Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value",
        "terseLabel": "Vested and expected to vest at September 30, 2020"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share Based Compensation Arrangement by Share Based Payment Award Equity Instruments Other Than Options Vested and Expected to Vest Outstanding Weighted Average Remaining Contractual Term",
        "label": "Share Based Compensation Arrangement by Share Based Payment Award Equity Instruments Other Than Options Vested and Expected to Vest Outstanding Weighted Average Remaining Contractual Term",
        "terseLabel": "Vested and expected to vest at September 30, 2020"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "rgen_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract": {
     "auth_ref": [],
     "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"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAggregateIntrinsicValueAbstract",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares": {
     "auth_ref": [],
     "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"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsAndEquityInstrumentsOtherThanOptionsNonvestedNumberOfShares",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "rgen_SpectrumIncMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Spectrum Inc.",
        "label": "Spectrum Inc [Member]",
        "terseLabel": "Spectrum Inc.",
        "verboseLabel": "Spectrum Inc."
       }
      }
     },
     "localname": "SpectrumIncMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_StockOptionAndIncentivePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Stock Option and Incentive Plan [Member]",
        "label": "Stock Option And Incentive Plan [Member]",
        "terseLabel": "2018 Plan"
       }
      }
     },
     "localname": "StockOptionAndIncentivePlanMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_StockholdersEquityNoteDisclosureLineItems": {
     "auth_ref": [],
     "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]"
       }
      }
     },
     "localname": "StockholdersEquityNoteDisclosureLineItems",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_StockholdersEquityNoteDisclosureTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Stockholders Equity Note Disclosure [Table]",
        "label": "Stockholders Equity Note Disclosure [Table]",
        "terseLabel": "Stockholders Equity Note Disclosure [Table]"
       }
      }
     },
     "localname": "StockholdersEquityNoteDisclosureTable",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_SummaryOfSignificantAccountingPoliciesLineItems": {
     "auth_ref": [],
     "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]"
       }
      }
     },
     "localname": "SummaryOfSignificantAccountingPoliciesLineItems",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_SummaryOfSignificantAccountingPoliciesTable": {
     "auth_ref": [],
     "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]"
       }
      }
     },
     "localname": "SummaryOfSignificantAccountingPoliciesTable",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "rgen_TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Two Point One Two Five Percentage Convertible Senior Notes Due Twenty Twenty One [Member]",
        "label": "Two Point One Two Five Percentage Convertible Senior Notes Due Twenty Twenty One [Member]",
        "terseLabel": "2.125% Convertible Senior Notes due 2021"
       }
      }
     },
     "localname": "TwoPointOneTwoFivePercentageConvertibleSeniorNotesDueTwentyTwentyOneMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Two Point One Two Five Percentage Non Convertible Senior Notes Due Twenty Twenty One [Member]",
        "terseLabel": "2.125% Non Convertible Senior Notes due 2021"
       }
      }
     },
     "localname": "TwoPointOneTwoFivePercentageNonConvertibleSeniorNotesDueTwentyTwentyOneMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_UnderwriterMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Underwriter.",
        "label": "Underwriter [Member]",
        "terseLabel": "Underwriters"
       }
      }
     },
     "localname": "UnderwriterMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_UnvestedOptionsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Unvested Options [Member]",
        "label": "Unvested Options [Member]",
        "terseLabel": "Unvested Options"
       }
      }
     },
     "localname": "UnvestedOptionsMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember": {
     "auth_ref": [],
     "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"
       }
      }
     },
     "localname": "ZeroPointThreeSevenFivePercentConvertibleSeniorNotesDueTwentyTwentyFourMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "rgen_ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Zero Point Three Seven Five Percentage Convertible Senior Notes Due Twenty Twenty Four [Member]",
        "verboseLabel": "0.375% Convertible Senior Notes due 2024"
       }
      }
     },
     "localname": "ZeroPointThreeSevenFivePercentageConvertibleSeniorNotesDueTwentyTwentyFourMember",
     "nsuri": "http://www.repligencorp.com/20200930",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_EuropeMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Europe [Member]",
        "terseLabel": "Europe"
       }
      }
     },
     "localname": "EuropeMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ExecutiveOfficerMember": {
     "auth_ref": [
      "r134"
     ],
     "lang": {
      "en-US": {
       "role": {
        "label": "Executive Officer [Member]",
        "terseLabel": "Awards Granted to Executive Level Employees"
       }
      }
     },
     "localname": "ExecutiveOfficerMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r132",
      "r209",
      "r213",
      "r369"
     ],
     "lang": {
      "en-US": {
       "role": {
        "label": "Customer [Axis]",
        "terseLabel": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/RevenueFromSignificantCustomersDetail",
      "http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Maximum [Member]",
        "terseLabel": "Maximum"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Minimum [Member]",
        "terseLabel": "Minimum"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Customer [Domain]",
        "terseLabel": "Customer [Domain]"
       }
      }
     },
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/RevenueFromSignificantCustomersDetail",
      "http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NorthAmericaMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "North America [Member]",
        "terseLabel": "North America"
       }
      }
     },
     "localname": "NorthAmericaMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_OwnershipAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Ownership [Axis]"
       }
      }
     },
     "localname": "OwnershipAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_OwnershipDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Ownership [Domain]"
       }
      }
     },
     "localname": "OwnershipDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r130",
      "r209",
      "r211",
      "r366",
      "r367"
     ],
     "lang": {
      "en-US": {
       "role": {
        "label": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Range [Axis]",
        "terseLabel": "Range [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Range [Domain]",
        "terseLabel": "Range [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Geographical [Domain]",
        "terseLabel": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails",
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r131",
      "r209",
      "r212",
      "r368",
      "r372",
      "r373"
     ],
     "lang": {
      "en-US": {
       "role": {
        "label": "Geographical [Axis]",
        "terseLabel": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails",
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualAxis": {
     "auth_ref": [
      "r134",
      "r318"
     ],
     "lang": {
      "en-US": {
       "role": {
        "label": "Title of Individual [Axis]",
        "terseLabel": "Title of Individual [Axis]"
       }
      }
     },
     "localname": "TitleOfIndividualAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Title of Individual [Domain]",
        "terseLabel": "Relationship to Entity [Domain]"
       }
      }
     },
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r40"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 23.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accounts Payable, Current",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock": {
     "auth_ref": [
      "r145"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of allowance for credit loss on accounts receivable.",
        "label": "Accounts Receivable, Allowance for Credit Loss [Table Text Block]",
        "terseLabel": "Summary Of Allowance For Credit Losses For Accounts Receivables"
       }
      }
     },
     "localname": "AccountsReceivableAllowanceForCreditLossTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CreditLossesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsReceivableMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Due from customers or clients for goods or services that have been delivered or sold.",
        "label": "Accounts Receivable [Member]",
        "terseLabel": "Accounts Receivable"
       }
      }
     },
     "localname": "AccountsReceivableMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r2",
      "r20",
      "r135",
      "r136",
      "r210"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Accounts Receivable, Net, Current",
        "terseLabel": "Accounts receivable, net of allowances of $621 and $525 at September 30, 2020 and December 31, 2019, respectively",
        "verboseLabel": "Accounts receivable"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets",
      "http://www.repligencorp.com/role/CreditLossesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedIncomeTaxesCurrent": {
     "auth_ref": [
      "r15",
      "r342",
      "r355"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail": {
       "order": 6.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Accrued Income Taxes, Current",
        "terseLabel": "Taxes"
       }
      }
     },
     "localname": "AccruedIncomeTaxesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r42"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 24.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      },
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Liabilities, Current",
        "terseLabel": "Accrued liabilities",
        "totalLabel": "Total accrued liabilities"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets",
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedProfessionalFeesCurrent": {
     "auth_ref": [
      "r7",
      "r9",
      "r42"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for professional fees, such as for legal and accounting services received. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Professional Fees, Current",
        "terseLabel": "Professional fees"
       }
      }
     },
     "localname": "AccruedProfessionalFeesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedRoyaltiesCurrent": {
     "auth_ref": [
      "r7",
      "r9",
      "r42"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for royalties. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Royalties, Current",
        "terseLabel": "Royalty and license fees"
       }
      }
     },
     "localname": "AccruedRoyaltiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r38",
      "r178"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.",
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "negatedLabel": "Less - Accumulated depreciation"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax": {
     "auth_ref": [
      "r56",
      "r59",
      "r60",
      "r61",
      "r300",
      "r306",
      "r308"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Accumulated Other Comprehensive Income (Loss), Foreign Currency Translation Adjustment, Net of Tax",
        "periodStartLabel": "Translation adjustment"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Accumulated Other Comprehensive Income (Loss) [Line Items]",
        "terseLabel": "Accumulated Other Comprehensive Income (Loss) [Line Items]"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r59",
      "r60",
      "r61"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 19.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.",
        "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax",
        "terseLabel": "Accumulated other comprehensive loss"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about components of accumulated other comprehensive income (loss).",
        "label": "Accumulated Other Comprehensive Income (Loss) [Table]",
        "terseLabel": "Accumulated Other Comprehensive Income (Loss) [Table]"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r58",
      "r61",
      "r62",
      "r289"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.",
        "label": "AOCI Attributable to Parent [Member]",
        "terseLabel": "Accumulated Other Comprehensive Loss"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccumulatedTranslationAdjustmentMember": {
     "auth_ref": [
      "r57",
      "r61",
      "r62",
      "r289"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accumulated other comprehensive income (loss) resulting from foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to the parent.",
        "label": "Accumulated Foreign Currency Adjustment Attributable to Parent [Member]",
        "verboseLabel": "Foreign Currency Translation Adjustment"
       }
      }
     },
     "localname": "AccumulatedTranslationAdjustmentMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetResidualValue": {
     "auth_ref": [
      "r164"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Acquired Finite-lived Intangible Asset, Residual Value",
        "verboseLabel": "Intangible Asset Residual Value"
       }
      }
     },
     "localname": "AcquiredFiniteLivedIntangibleAssetResidualValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": {
     "auth_ref": [
      "r165"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Acquired Finite-lived Intangible Assets, Weighted Average Useful Life",
        "verboseLabel": "Weighted Average Useful Life (in years)"
       }
      }
     },
     "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "auth_ref": [
      "r21"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 18.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.",
        "label": "Additional Paid in Capital, Common Stock",
        "terseLabel": "Additional paid-in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.",
        "label": "Additional Paid-in Capital [Member]",
        "terseLabel": "Additional Paid- In Capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": {
     "auth_ref": [
      "r107"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by new accounting pronouncement.",
        "label": "Adjustments for New Accounting Pronouncements [Axis]",
        "terseLabel": "Adjustments for New Accounting Pronouncements [Axis]"
       }
      }
     },
     "localname": "AdjustmentsForNewAccountingPronouncementsAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Decrease for Tax Withholding Obligation",
        "negatedLabel": "Tax withholding on vesting of restricted stock units"
       }
      }
     },
     "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt": {
     "auth_ref": [
      "r187"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Adjustment to additional paid in capital resulting from the recognition of convertible debt instruments as two separate components - a debt component and an equity component. This bifurcation may result in a basis difference associated with the liability component that represents a temporary difference for purposes of applying accounting for income taxes. The initial recognition of deferred taxes for the tax effect of that temporary difference is as an adjustment to additional paid in capital.",
        "label": "Adjustments to Additional Paid in Capital, Equity Component of Convertible Debt",
        "terseLabel": "Equity component of 0.375% senior convertible notes, net of tax"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalEquityComponentOfConvertibleDebt",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r219",
      "r221",
      "r249",
      "r250"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.",
        "label": "Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition",
        "verboseLabel": "Stock-based compensation expense"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts": {
     "auth_ref": [
      "r196",
      "r202"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of decrease in additional paid in capital (APIC) resulting from direct costs associated with issuing stock. Includes, but is not limited to, legal and accounting fees and direct costs associated with stock issues under a shelf registration.",
        "label": "Adjustments to Additional Paid in Capital, Stock Issued, Issuance Costs",
        "presentationGuidance": "Proceeds from issuance of common stock, net of issuance cost"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Adjustments to reconcile net income to net cash provided by operating activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivable": {
     "auth_ref": [
      "r137",
      "r139",
      "r141",
      "r144"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable.",
        "label": "Accounts Receivable, Allowance for Credit Loss",
        "negatedPeriodEndLabel": "Ending balance",
        "negatedPeriodStartLabel": "Beginning balance"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CreditLossesSummaryOfAllowanceForCreditLossesForAccountsReceivablesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r26",
      "r137",
      "r139"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "Allowance for Doubtful Accounts Receivable, Current",
        "terseLabel": "Accounts receivable, reserve for doubtful accounts"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical",
      "http://www.repligencorp.com/role/CreditLossesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": {
     "auth_ref": [
      "r143"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance.",
        "label": "Accounts Receivable, Allowance for Credit Loss, Writeoff",
        "terseLabel": "Current period change for write-offs"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CreditLossesSummaryOfAllowanceForCreditLossesForAccountsReceivablesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfDebtDiscountPremium": {
     "auth_ref": [
      "r81",
      "r95",
      "r310"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of noncash expense included in interest expense to amortize debt discount and premium associated with the related debt instruments. Excludes amortization of financing costs. Alternate captions include noncash interest expense.",
        "label": "Amortization of Debt Discount (Premium)",
        "terseLabel": "Accretion of the debt discount",
        "verboseLabel": "Non-cash interest expense"
       }
      }
     },
     "localname": "AmortizationOfDebtDiscountPremium",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfFinancingCosts": {
     "auth_ref": [
      "r74",
      "r95",
      "r312"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense attributable to debt issuance costs.",
        "label": "Amortization of Debt Issuance Costs",
        "terseLabel": "Amortization of the debt issuance costs"
       }
      }
     },
     "localname": "AmortizationOfFinancingCosts",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r95",
      "r162",
      "r171"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.",
        "label": "Amortization of Intangible Assets",
        "verboseLabel": "Amortization expense"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r117"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.",
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount",
        "terseLabel": "Common stock excluded from calculation of diluted earnings per share"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r129",
      "r340",
      "r354"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Assets [Abstract]",
        "terseLabel": "Assets"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r3",
      "r4",
      "r54"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets, Current",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Assets, Current [Abstract]",
        "terseLabel": "Current assets:"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r223",
      "r246"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of award under share-based payment arrangement.",
        "label": "Award Type [Axis]",
        "terseLabel": "Award Type [Axis]"
       }
      }
     },
     "localname": "AwardTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityTables",
      "http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by location on balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Axis]"
       }
      }
     },
     "localname": "BalanceSheetLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationDomain": {
     "auth_ref": [
      "r290",
      "r291"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Location in the balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Domain]"
       }
      }
     },
     "localname": "BalanceSheetLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r106"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Basis of Presentation and Significant Accounting Policies [Text Block]",
        "terseLabel": "Basis of presentation"
       }
      }
     },
     "localname": "BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BuildingsAndImprovementsGross": {
     "auth_ref": [
      "r6",
      "r177"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Buildings and Improvements, Gross",
        "terseLabel": "Buildings"
       }
      }
     },
     "localname": "BuildingsAndImprovementsGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.",
        "label": "Business Acquisition, Acquiree [Domain]",
        "terseLabel": "Business Acquisition, Acquiree [Domain]"
       }
      }
     },
     "localname": "BusinessAcquisitionAcquireeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/role/AcquisitionsTables",
      "http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail",
      "http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail",
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "auth_ref": [
      "r271",
      "r272"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by business combination or series of individually immaterial business combinations.",
        "label": "Business Acquisition [Axis]",
        "terseLabel": "Business Acquisition [Axis]"
       }
      }
     },
     "localname": "BusinessAcquisitionAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/role/AcquisitionsTables",
      "http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail",
      "http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail",
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of direct costs of the business combination including legal, accounting, and other costs incurred to consummate the business acquisition.",
        "label": "Business Acquisition, Transaction Costs",
        "terseLabel": "Transaction costs"
       }
      }
     },
     "localname": "BusinessAcquisitionCostOfAcquiredEntityTransactionCosts",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessAcquisitionLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Business Acquisition [Line Items]",
        "terseLabel": "Business Acquisition [Line Items]"
       }
      }
     },
     "localname": "BusinessAcquisitionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired": {
     "auth_ref": [
      "r265"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of voting equity interests acquired at the acquisition date in the business combination.",
        "label": "Business Acquisition, Percentage of Voting Interests Acquired",
        "terseLabel": "Business acquisition, voting interest acquired"
       }
      }
     },
     "localname": "BusinessAcquisitionPercentageOfVotingInterestsAcquired",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic": {
     "auth_ref": [
      "r268",
      "r269"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The pro forma basic net income per share for a period as if the business combination or combinations had been completed at the beginning of a period.",
        "label": "Business Acquisition, Pro Forma Earnings Per Share, Basic",
        "terseLabel": "Basic"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaEarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted": {
     "auth_ref": [
      "r268",
      "r269"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The pro forma diluted net income per share for a period as if the business combination or combinations had been completed at the beginning of a period.",
        "label": "Business Acquisition, Pro Forma Earnings Per Share, Diluted",
        "terseLabel": "Diluted"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaEarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": {
     "auth_ref": [
      "r268",
      "r269"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate.",
        "label": "Business Acquisition, Pro Forma Information [Table Text Block]",
        "terseLabel": "Unaudited Supplemental Pro Forma Information"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaInformationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss": {
     "auth_ref": [
      "r268",
      "r269"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The pro forma net Income or Loss for the period as if the business combination or combinations had been completed at the beginning of a period.",
        "label": "Business Acquisition, Pro Forma Net Income (Loss)",
        "terseLabel": "Pro forma net income",
        "verboseLabel": "Business acquisitions proforma net income"
       }
      }
     },
     "localname": "BusinessAcquisitionsProFormaNetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessAcquisitionsProFormaRevenue": {
     "auth_ref": [
      "r268",
      "r269"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The pro forma revenue for a period as if the business combination or combinations had been completed at the beginning of the period.",
        "label": "Business Acquisition, Pro Forma Revenue",
        "verboseLabel": "Pro forma total revenue"
       }
      }
     },
     "localname": "BusinessAcquisitionsProFormaRevenue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationAcquisitionRelatedCosts": {
     "auth_ref": [
      "r264"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities.",
        "label": "Business Combination, Acquisition Related Costs",
        "terseLabel": "Business Combination, Acquisition Related Costs"
       }
      }
     },
     "localname": "BusinessCombinationAcquisitionRelatedCosts",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "auth_ref": [
      "r280",
      "r281",
      "r282"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.",
        "label": "Business Combination, Consideration Transferred",
        "terseLabel": "Business combination, consideration transferred"
       }
      }
     },
     "localname": "BusinessCombinationConsiderationTransferred1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable": {
     "auth_ref": [
      "r280",
      "r281"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of equity interests of the acquirer, including instruments or interests issued or issuable in consideration for the business combination.",
        "label": "Business Combination, Consideration Transferred, Equity Interests Issued and Issuable",
        "verboseLabel": "Value of common stock issued"
       }
      }
     },
     "localname": "BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1": {
     "auth_ref": [
      "r94",
      "r284"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "definitionGuidance": "Deferred tax liability",
        "documentation": "Amount of increase (decrease) in the value of a contingent consideration liability, including, but not limited to, differences arising upon settlement.",
        "label": "Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability"
       }
      }
     },
     "localname": "BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "auth_ref": [
      "r285"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).",
        "label": "Business Combination Disclosure [Text Block]",
        "terseLabel": "Acquisitions"
       }
      }
     },
     "localname": "BusinessCombinationDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/Acquisitions"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual": {
     "auth_ref": [
      "r267"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This element represents the amount of revenue of the acquiree since the acquisition date included in the consolidated income statement for the reporting period.",
        "label": "Business Combination, Pro Forma Information, Revenue of Acquiree since Acquisition Date, Actual",
        "terseLabel": "Business acquisition, revenue"
       }
      }
     },
     "localname": "BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": {
     "auth_ref": [
      "r274"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents",
        "terseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets": {
     "auth_ref": [
      "r274"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Prepaid Expense and Other Assets",
        "terseLabel": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": {
     "auth_ref": [
      "r274"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables",
        "terseLabel": "Accounts receivable"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": {
     "auth_ref": [
      "r274"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of liabilities incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable",
        "negatedLabel": "Accounts payable"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets": {
     "auth_ref": [
      "r252",
      "r274"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax asset attributable to deductible temporary differences and carryforwards acquired at the acquisition date.",
        "label": "Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Assets",
        "terseLabel": "Deferred taxes"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": {
     "auth_ref": [
      "r274"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill",
        "positiveLabel": "Fair value of acquired finite lived intangible assets",
        "verboseLabel": "Business combination, intangible assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles": {
     "auth_ref": [
      "r273",
      "r274"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of identifiable intangible assets recognized as of the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Finite-Lived Intangibles",
        "verboseLabel": "Fair Value"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory": {
     "auth_ref": [
      "r273",
      "r274"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of inventory recognized as of the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Inventory",
        "terseLabel": "Inventory"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": {
     "auth_ref": [
      "r273",
      "r274"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment",
        "terseLabel": "Fixed assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": {
     "auth_ref": [
      "r274"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net",
        "terseLabel": "Fair value of net assets acquired"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed": {
     "auth_ref": [
      "r266"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "For transactions that are recognized separately from the acquisition of assets and assumptions of liabilities in the business combination, such as related to pre-existing relationships with the acquiree, this element represents the disclosure of the amount of acquisition related costs which have been expensed.",
        "label": "Business Combination, Separately Recognized Transactions, Additional Disclosures, Acquisition Cost Expensed",
        "terseLabel": "Transaction costs"
       }
      }
     },
     "localname": "BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Business Combinations [Abstract]"
       }
      }
     },
     "localname": "BusinessCombinationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CapitalizedComputerSoftwareGross": {
     "auth_ref": [
      "r374"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail": {
       "order": 10.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before accumulated amortization of capitalized costs for computer software, including but not limited to, acquired and internally developed computer software.",
        "label": "Capitalized Computer Software, Gross",
        "terseLabel": "Computer hardware and software"
       }
      }
     },
     "localname": "CapitalizedComputerSoftwareGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r0",
      "r36",
      "r97"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "terseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of cash and cash equivalent balance.",
        "label": "Cash and Cash Equivalents [Axis]"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r92",
      "r97",
      "r101"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents",
        "periodEndLabel": "Cash, cash equivalents and restricted cash, end of period",
        "periodStartLabel": "Cash, cash equivalents and restricted cash, beginning of period"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r92",
      "r305"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "totalLabel": "Net increase in cash, cash equivalents and restricted cash"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Change in Contract with Customer, Asset and Liability [Abstract]",
        "verboseLabel": "Revenue recognized during the nine-month period ended September 30, 2020 relating to:"
       }
      }
     },
     "localname": "ChangeInContractWithCustomerAssetAndLiabilityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ClassOfStockDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock.",
        "label": "Class of Stock [Domain]"
       }
      }
     },
     "localname": "ClassOfStockDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetail",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail",
      "http://www.repligencorp.com/role/EarningsPerShare",
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SubsequentEvents"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r49",
      "r182",
      "r345",
      "r362"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.",
        "label": "Commitments and Contingencies",
        "terseLabel": "Commitments and contingencies (Note 10)"
       }
      }
     },
     "localname": "CommitmentsAndContingencies",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r181",
      "r183"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "terseLabel": "Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CommitmentsAndContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": {
     "auth_ref": [
      "r50"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Aggregate number of common shares reserved for future issuance.",
        "label": "Common Stock, Capital Shares Reserved for Future Issuance",
        "verboseLabel": "Common stock shares reserved for Issuance"
       }
      }
     },
     "localname": "CommonStockCapitalSharesReservedForFutureIssuance",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]",
        "terseLabel": "Common Stock"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r19"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common Stock, Par or Stated Value Per Share",
        "terseLabel": "Common stock, par value"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r19"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.",
        "label": "Common Stock, Shares Authorized",
        "terseLabel": "Common stock, shares authorized"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r19"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.",
        "label": "Common Stock, Shares, Issued",
        "terseLabel": "Common stock, shares issued"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r19",
      "r196"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.",
        "label": "Common Stock, Shares, Outstanding",
        "terseLabel": "Common stock, shares outstanding"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r19"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 17.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Common Stock, Value, Issued",
        "verboseLabel": "Common stock, $0.01 par value; 80,000,000 shares authorized; 52,606,700 shares at September 30, 2020 and 52,078,258 shares at December 31, 2019 issued and outstanding"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold": {
     "auth_ref": [
      "r75"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of expense for salary, wage, profit sharing; incentive and equity-based compensation; and other employee benefit. Other employee benefit expense includes, but is not limited to, service component of net periodic benefit cost for defined benefit plan. Excludes compensation cost in cost of good and service sold.",
        "label": "Compensation Expense, Excluding Cost of Good and Service Sold"
       }
      }
     },
     "localname": "CompensationExpenseExcludingCostOfGoodAndServiceSold",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r65",
      "r67",
      "r68"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "totalLabel": "Comprehensive income (loss)"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTaxAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ComprehensiveIncomeNoteTextBlock": {
     "auth_ref": [
      "r85"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for comprehensive income, which includes, but is not limited to, 1) the amount of income tax expense or benefit allocated to each component of other comprehensive income, including reclassification adjustments, 2) the reclassification adjustments for each classification of other comprehensive income and 3) the ending accumulated balances for each component of comprehensive income.",
        "label": "Comprehensive Income (Loss) Note [Text Block]",
        "terseLabel": "Accumulated Other Comprehensive Loss"
       }
      }
     },
     "localname": "ComprehensiveIncomeNoteTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLoss"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r124",
      "r125",
      "r302",
      "r303"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.",
        "label": "Concentration Risk Benchmark [Domain]",
        "terseLabel": "Concentration Risk Benchmark [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail",
      "http://www.repligencorp.com/role/SegmentReportingTables"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r124",
      "r125",
      "r302",
      "r303",
      "r370"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]",
        "terseLabel": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail",
      "http://www.repligencorp.com/role/SegmentReportingTables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r124",
      "r125",
      "r302",
      "r303",
      "r370"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.",
        "label": "Concentration Risk Type [Axis]",
        "terseLabel": "Concentration Risk Type [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Concentration Risk [Line Items]",
        "terseLabel": "Concentration Risk [Line Items]",
        "verboseLabel": "Concentration Risk [Line Items]"
       }
      }
     },
     "localname": "ConcentrationRiskLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RevenueFromSignificantCustomersDetail",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "auth_ref": [
      "r124",
      "r125",
      "r302",
      "r303"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Concentration Risk, Percentage",
        "positiveLabel": "Revenues, percentage by country",
        "terseLabel": "Accounts receivable, percentage by customer",
        "verboseLabel": "Revenue from significant customers"
       }
      }
     },
     "localname": "ConcentrationRiskPercentage1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ConcentrationRiskTable": {
     "auth_ref": [
      "r121",
      "r124",
      "r125",
      "r126",
      "r302",
      "r304"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.",
        "label": "Concentration Risk [Table]",
        "terseLabel": "Concentration Risk [Table]",
        "verboseLabel": "Concentration Risk [Table]"
       }
      }
     },
     "localname": "ConcentrationRiskTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RevenueFromSignificantCustomersDetail",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r124",
      "r125",
      "r302",
      "r303"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Concentration Risk Type [Domain]",
        "terseLabel": "Concentration Risk Type [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConstructionInProgressGross": {
     "auth_ref": [
      "r177"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail": {
       "order": 8.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Construction in Progress, Gross",
        "terseLabel": "Construction in progress"
       }
      }
     },
     "localname": "ConstructionInProgressGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContingentConsiderationByTypeAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of contingent consideration.",
        "label": "Contingent Consideration by Type [Axis]",
        "terseLabel": "Contingent Consideration by Type [Axis]"
       }
      }
     },
     "localname": "ContingentConsiderationByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ContingentConsiderationTypeDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Description of contingent payment arrangement.",
        "label": "Contingent Consideration Type [Domain]",
        "terseLabel": "Contingent Consideration Type [Domain]"
       }
      }
     },
     "localname": "ContingentConsiderationTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Contract with Customer, Asset and Liability [Abstract]",
        "verboseLabel": "Balances from contracts with customers only:"
       }
      }
     },
     "localname": "ContractWithCustomerAssetAndLiabilityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "auth_ref": [
      "r206"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of contract balances and changes in contract balances.",
        "label": "Contract with Customer, Asset and Liability [Table Text Block]",
        "terseLabel": "Summary of Receivables and Deferred Revenue from Contracts with Customers"
       }
      }
     },
     "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RevenueRecognitionTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ContractWithCustomerLiability": {
     "auth_ref": [
      "r204",
      "r205",
      "r210"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.",
        "label": "Contract with Customer, Liability",
        "terseLabel": "The beginning deferred revenue balance"
       }
      }
     },
     "localname": "ContractWithCustomerLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod": {
     "auth_ref": [
      "r207"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of revenue recognized from performance obligation satisfied or partially satisfied in previous reporting periods. Includes, but is not limited to, change in transaction price.",
        "label": "Contract with Customer, Performance Obligation Satisfied in Previous Period",
        "verboseLabel": "Changes in pricing related to products or services satisfied in previous periods"
       }
      }
     },
     "localname": "ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConvertibleDebtTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of borrowings which can be exchanged for a specified number of another security at the option of the issuer or the holder. Disclosures include, but are not limited to, principal amount, amortized premium or discount, and amount of liability and equity components.",
        "label": "Convertible Debt [Table Text Block]",
        "terseLabel": "Carrying Value of Convertible Senior Notes"
       }
      }
     },
     "localname": "ConvertibleDebtTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConvertibleLongTermNotesPayable": {
     "auth_ref": [
      "r47"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 26.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of long-term debt (with maturities initially due after one year or beyond the operating cycle if longer) identified as Convertible Notes Payable, excluding current portion. 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.",
        "label": "Convertible Notes Payable, Noncurrent",
        "terseLabel": "Convertible senior notes, net",
        "verboseLabel": "Net carrying amount"
       }
      }
     },
     "localname": "ConvertibleLongTermNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConvertibleNotesPayable": {
     "auth_ref": [
      "r16",
      "r343",
      "r356",
      "r371"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Including the current and noncurrent portions, carrying value as of the balance sheet date of a written promise to pay a note, initially due after one year or beyond the operating cycle if longer, which can be exchanged for a specified amount of one or more securities (typically common stock), at the option of the issuer or the holder.",
        "label": "Convertible Notes Payable",
        "totalLabel": "Total debt"
       }
      }
     },
     "localname": "ConvertibleNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r77"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 4.0,
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.",
        "label": "Cost of Goods and Services Sold",
        "terseLabel": "Cost of product revenue"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfSalesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Primary financial statement caption encompassing cost of sales.",
        "label": "Cost of Sales [Member]",
        "terseLabel": "Cost of product revenue"
       }
      }
     },
     "localname": "CostOfSalesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CostsAndExpenses": {
     "auth_ref": [
      "r76"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Total costs of sales and operating expenses for the period.",
        "label": "Costs and Expenses",
        "totalLabel": "Total costs and operating expenses"
       }
      }
     },
     "localname": "CostsAndExpenses",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostsAndExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Costs and Expenses [Abstract]",
        "verboseLabel": "Costs and operating expenses:"
       }
      }
     },
     "localname": "CostsAndExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CreditLossAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Credit Loss [Abstract]"
       }
      }
     },
     "localname": "CreditLossAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CreditLossFinancialInstrumentTextBlock": {
     "auth_ref": [
      "r140",
      "r146",
      "r147",
      "r148",
      "r149",
      "r150",
      "r151"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for credit loss on financial instrument measured at amortized cost basis, net investment in lease, off-balance sheet credit exposure, and available-for-sale debt security.",
        "label": "Credit Loss, Financial Instrument [Text Block]",
        "verboseLabel": "Credit Losses"
       }
      }
     },
     "localname": "CreditLossFinancialInstrumentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CreditLosses"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "auth_ref": [
      "r122"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Customer Concentration Risk [Member]",
        "terseLabel": "Customer Concentration Risk"
       }
      }
     },
     "localname": "CustomerConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerRelationshipsMember": {
     "auth_ref": [
      "r278"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships.",
        "label": "Customer Relationships [Member]",
        "terseLabel": "Customer relationships"
       }
      }
     },
     "localname": "CustomerRelationshipsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtConversionByUniqueDescriptionAxis": {
     "auth_ref": [
      "r98",
      "r100"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by description of debt issuances converted in a noncash or part noncash transaction.",
        "label": "Debt Conversion Description [Axis]"
       }
      }
     },
     "localname": "DebtConversionByUniqueDescriptionAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtConversionConvertedInstrumentAmount1": {
     "auth_ref": [
      "r98",
      "r100"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The value of the financial instrument(s) that the original debt is being converted into in a noncash (or part noncash) transaction. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.",
        "label": "Debt Conversion, Converted Instrument, Amount",
        "terseLabel": "Total consideration on conversion",
        "verboseLabel": "Fair value of 2,316,229 shares of common stock issued for conversion of convertible notes"
       }
      }
     },
     "localname": "DebtConversionConvertedInstrumentAmount1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtConversionNameDomain": {
     "auth_ref": [
      "r98",
      "r100"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The name of the original debt issue that has been converted in a noncash (or part noncash) transaction during the accounting period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.",
        "label": "Debt Conversion, Name [Domain]"
       }
      }
     },
     "localname": "DebtConversionNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Debt Disclosure [Abstract]"
       }
      }
     },
     "localname": "DebtDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r14",
      "r15",
      "r16",
      "r341",
      "r343",
      "r353"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.",
        "label": "Debt Instrument [Axis]",
        "terseLabel": "Debt Instrument [Axis]"
       }
      }
     },
     "localname": "DebtInstrumentAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentCarryingAmount": {
     "auth_ref": [
      "r16",
      "r189",
      "r343",
      "r353"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_ConvertibleNotesPayable",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Long-term Debt, Gross",
        "verboseLabel": "Principal amount"
       }
      }
     },
     "localname": "DebtInstrumentCarryingAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature": {
     "auth_ref": [
      "r201"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of a favorable spread to a debt holder between the amount of debt being converted and the value of the securities received upon conversion. This is an embedded conversion feature of convertible debt issued that is in-the-money at the commitment date.",
        "label": "Debt Instrument, Convertible, Beneficial Conversion Feature",
        "terseLabel": "Proceeds allocated to the conversion feature"
       }
      }
     },
     "localname": "DebtInstrumentConvertibleBeneficialConversionFeature",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent": {
     "auth_ref": [
      "r188"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The carrying amount of the equity component of convertible debt which may be settled in cash upon conversion.",
        "label": "Debt Instrument, Convertible, Carrying Amount of Equity Component",
        "verboseLabel": "Equity component of converted debt"
       }
      }
     },
     "localname": "DebtInstrumentConvertibleCarryingAmountOfTheEquityComponent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentConvertibleConversionPrice1": {
     "auth_ref": [
      "r191"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The price per share of the conversion feature embedded in the debt instrument.",
        "label": "Debt Instrument, Convertible, Conversion Price",
        "terseLabel": "Notes initial conversion price"
       }
      }
     },
     "localname": "DebtInstrumentConvertibleConversionPrice1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_DebtInstrumentConvertibleConversionRatio1": {
     "auth_ref": [
      "r46",
      "r197",
      "r198",
      "r200"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Ratio applied to the conversion of debt instrument into equity with equity shares divided by debt principal amount.",
        "label": "Debt Instrument, Convertible, Conversion Ratio",
        "terseLabel": "Notes conversion ratio per $1,000 principal amount"
       }
      }
     },
     "localname": "DebtInstrumentConvertibleConversionRatio1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "pureItemType"
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "auth_ref": [
      "r311",
      "r313"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Face (par) amount of debt instrument at time of issuance.",
        "label": "Debt Instrument, Face Amount",
        "presentationGuidance": "Aggregate principal amount",
        "terseLabel": "Notes issued",
        "verboseLabel": "Principal amount"
       }
      }
     },
     "localname": "DebtInstrumentFaceAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentFairValue": {
     "auth_ref": [
      "r301"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Fair value portion of debt instrument payable, including, but not limited to, notes payable and loans payable.",
        "label": "Debt Instrument, Fair Value Disclosure",
        "terseLabel": "Notes issued, fair value"
       }
      }
     },
     "localname": "DebtInstrumentFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentFrequencyOfPeriodicPayment": {
     "auth_ref": [
      "r47",
      "r350"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Description of the frequency of periodic payments (monthly, quarterly, annual).",
        "label": "Debt Instrument, Frequency of Periodic Payment",
        "terseLabel": "Notes, frequency of periodic payment"
       }
      }
     },
     "localname": "DebtInstrumentFrequencyOfPeriodicPayment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentIncreaseAccruedInterest": {
     "auth_ref": [
      "r104"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Increase for accrued, but unpaid interest on the debt instrument for the period.",
        "label": "Debt Instrument, Increase, Accrued Interest",
        "verboseLabel": "Accrued interest"
       }
      }
     },
     "localname": "DebtInstrumentIncreaseAccruedInterest",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentInterestRateEffectivePercentage": {
     "auth_ref": [
      "r44",
      "r192",
      "r311"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium.",
        "label": "Debt Instrument, Interest Rate, Effective Percentage",
        "terseLabel": "Effective interest rate on the Notes"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateEffectivePercentage",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "auth_ref": [
      "r44"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.",
        "label": "Debt Instrument, Interest Rate, Stated Percentage",
        "terseLabel": "Notes, interest rate",
        "verboseLabel": "Senior convertible notes"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentInterestRateTerms": {
     "auth_ref": [
      "r44"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Debt Instrument, Interest Rate Terms",
        "terseLabel": "Interest repayment terms"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateTerms",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Debt Instrument [Line Items]",
        "terseLabel": "Debt Instrument [Line Items]"
       }
      }
     },
     "localname": "DebtInstrumentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentMaturityDate": {
     "auth_ref": [
      "r45",
      "r295"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Date when the debt instrument is scheduled to be fully repaid, in CCYY-MM-DD format.",
        "label": "Debt Instrument, Maturity Date",
        "terseLabel": "Notes, due date"
       }
      }
     },
     "localname": "DebtInstrumentMaturityDate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "dateItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r47"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities.",
        "label": "Debt Instrument, Name [Domain]",
        "terseLabel": "Debt Instrument, Name [Domain]"
       }
      }
     },
     "localname": "DebtInstrumentNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentRedemptionPeriodAxis": {
     "auth_ref": [
      "r351"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information about timing of debt redemption features under terms of the debt agreement.",
        "label": "Debt Instrument, Redemption, Period [Axis]",
        "terseLabel": "Debt Instrument, Redemption, Period [Axis]"
       }
      }
     },
     "localname": "DebtInstrumentRedemptionPeriodAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentRedemptionPeriodDomain": {
     "auth_ref": [
      "r351"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Period as defined under terms of the debt agreement for debt redemption features.",
        "label": "Debt Instrument, Redemption, Period [Domain]",
        "terseLabel": "Debt Instrument, Redemption, Period [Domain]"
       }
      }
     },
     "localname": "DebtInstrumentRedemptionPeriodDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentRedemptionPricePercentage": {
     "auth_ref": [
      "r351"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage price of original principal amount of debt at which debt can be redeemed by the issuer.",
        "label": "Debt Instrument, Redemption Price, Percentage",
        "terseLabel": "Notes redemption price"
       }
      }
     },
     "localname": "DebtInstrumentRedemptionPricePercentage",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentTable": {
     "auth_ref": [
      "r47",
      "r103",
      "r197",
      "r199",
      "r200",
      "r201",
      "r310",
      "r311",
      "r313",
      "r352"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Schedule of Long-term Debt Instruments [Table]",
        "terseLabel": "Schedule of Long-term Debt Instruments [Table]"
       }
      }
     },
     "localname": "DebtInstrumentTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentUnamortizedDiscount": {
     "auth_ref": [
      "r310",
      "r313"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_ConvertibleNotesPayable",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of debt discount.",
        "label": "Debt Instrument, Unamortized Discount",
        "negatedTerseLabel": "Less: unamortized debt discount"
       }
      }
     },
     "localname": "DebtInstrumentUnamortizedDiscount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredFinanceCostsNet": {
     "auth_ref": [
      "r39",
      "r312"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_ConvertibleNotesPayable",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.",
        "label": "Debt Issuance Costs, Net",
        "negatedTerseLabel": "Less: unamortized debt issuance costs"
       }
      }
     },
     "localname": "DeferredFinanceCostsNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "auth_ref": [
      "r257"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 13.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.",
        "label": "Deferred Income Tax Assets, Net",
        "verboseLabel": "Deferred tax assets"
       }
      }
     },
     "localname": "DeferredIncomeTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r95",
      "r102",
      "r258",
      "r261"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred Income Tax Expense (Benefit)",
        "verboseLabel": "Deferred income taxes, net"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredRevenue": {
     "auth_ref": [
      "r27"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable.",
        "label": "Deferred Revenue",
        "verboseLabel": "Deferred revenue (included in accrued liabilities in the consolidated balance sheets)"
       }
      }
     },
     "localname": "DeferredRevenue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredRevenueArrangementTypeAxis": {
     "auth_ref": [
      "r8"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of deferred revenue arrangement.",
        "label": "Deferred Revenue Arrangement Type [Axis]",
        "terseLabel": "Deferred Revenue Arrangement Type [Axis]"
       }
      }
     },
     "localname": "DeferredRevenueArrangementTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredRevenueArrangementTypeDomain": {
     "auth_ref": [
      "r8"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Category of obligation arising when an entity receives consideration from a customer before achieving certain criteria that must be met for revenue to be recognized.",
        "label": "Deferred Revenue [Domain]",
        "terseLabel": "Deferred Revenue [Domain]"
       }
      }
     },
     "localname": "DeferredRevenueArrangementTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DeferredRevenueCurrent": {
     "auth_ref": [
      "r27"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Deferred Revenue, Current",
        "terseLabel": "Deferred revenue"
       }
      }
     },
     "localname": "DeferredRevenueCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAndOtherLiabilitiesNoncurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 27.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences, with jurisdictional netting, and liabilities classified as noncurrent and other.",
        "label": "Deferred Tax and Other Liabilities, Noncurrent",
        "terseLabel": "Deferred tax liabilities"
       }
      }
     },
     "localname": "DeferredTaxAndOtherLiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r95",
      "r176"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.",
        "label": "Depreciation"
       }
      }
     },
     "localname": "Depreciation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationAndAmortization": {
     "auth_ref": [
      "r95",
      "r176"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Depreciation, Depletion and Amortization, Nonproduction",
        "terseLabel": "Depreciation and amortization"
       }
      }
     },
     "localname": "DepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DevelopedTechnologyRightsMember": {
     "auth_ref": [
      "r279"
     ],
     "lang": {
      "en-US": {
       "role": {
        "definitionGuidance": "Technology - developed",
        "documentation": "Rights to developed technology, which can include the right to develop, use, market, sell, or offer for sale products, compounds, or intellectual property.",
        "label": "Developed Technology Rights [Member]",
        "verboseLabel": "Developed technology"
       }
      }
     },
     "localname": "DevelopedTechnologyRightsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DilutiveSecuritiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Dilutive Securities, Effect on Basic Earnings Per Share [Abstract]",
        "verboseLabel": "Effect of dilutive shares:"
       }
      }
     },
     "localname": "DilutiveSecuritiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Disaggregation of Revenue [Line Items]",
        "verboseLabel": "Disaggregation of Revenue [Line Items]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail",
      "http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail",
      "http://www.repligencorp.com/role/SummaryOfReceivablesAndDeferredRevenueFromContractsWithCustomersDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r209"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table Text Block]",
        "terseLabel": "Disaggregation of Revenue"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RevenueRecognitionTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Disclosure of Compensation Related Costs, Share-based Payments [Abstract]"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisclosureTextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Disclosure Text Block [Abstract]"
       }
      }
     },
     "localname": "DisclosureTextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarliestTaxYearMember": {
     "auth_ref": [
      "r255"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Earliest identified tax year.",
        "label": "Earliest Tax Year [Member]",
        "terseLabel": "Earliest Tax Year"
       }
      }
     },
     "localname": "EarliestTaxYearMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EarlyRepaymentOfSeniorDebt": {
     "auth_ref": [
      "r91"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow for the extinguishment of long-term borrowing, with the highest claim on the assets of the entity in case of bankruptcy or liquidation, before its maturity.",
        "label": "Early Repayment of Senior Debt",
        "terseLabel": "Repayment Of Senior Debt"
       }
      }
     },
     "localname": "EarlyRepaymentOfSeniorDebt",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Earnings Per Share [Abstract]",
        "terseLabel": "Earnings per share:"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r72",
      "r108",
      "r112",
      "r114",
      "r115",
      "r116",
      "r119",
      "r348",
      "r364"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.",
        "label": "Earnings Per Share, Basic",
        "terseLabel": "Basic"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareBasicAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Earnings Per Share, Basic [Abstract]"
       }
      }
     },
     "localname": "EarningsPerShareBasicAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasicAndDilutedAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "definitionGuidance": "Earnings per share:",
        "label": "Earnings Per Share, Basic and Diluted [Abstract]"
       }
      }
     },
     "localname": "EarningsPerShareBasicAndDilutedAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r72",
      "r108",
      "r112",
      "r114",
      "r115",
      "r116",
      "r119",
      "r348",
      "r364"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.",
        "label": "Earnings Per Share, Diluted",
        "terseLabel": "Diluted"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r120"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "Earnings Per Share [Text Block]",
        "terseLabel": "Earnings Per Share"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShare"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents": {
     "auth_ref": [
      "r305"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) from the effect of exchange rate changes on cash and cash equivalent balances held in foreign currencies.",
        "label": "Effect of Exchange Rate on Cash and Cash Equivalents",
        "terseLabel": "Effect of exchange rate changes on cash, cash equivalents and restricted cash"
       }
      }
     },
     "localname": "EffectOfExchangeRateOnCashAndCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "auth_ref": [
      "r105",
      "r253",
      "r254"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Effective Income Tax Rate Reconciliation, Percent",
        "verboseLabel": "Income tax (benefit) provision"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r253",
      "r254",
      "r260"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss).",
        "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent",
        "terseLabel": "Corporate tax rate"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "auth_ref": [
      "r42"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail": {
       "order": 7.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Employee-related Liabilities, Current",
        "terseLabel": "Employee compensation"
       }
      }
     },
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items]",
        "terseLabel": "Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r245"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.",
        "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized",
        "terseLabel": "Total unrecognized compensation cost"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r245"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition",
        "terseLabel": "Unrecognized compensation cost, weighted average remaining requisite service period"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EmployeeStockOptionMember": {
     "auth_ref": [
      "r243"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.",
        "label": "Employee Stock Option [Member]",
        "terseLabel": "Employee Stock Option"
       }
      }
     },
     "localname": "EmployeeStockOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EntityWideRevenueMajorCustomerLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Revenue, Major Customer [Line Items]",
        "terseLabel": "Revenue, Major Customer [Line Items]"
       }
      }
     },
     "localname": "EntityWideRevenueMajorCustomerLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Equity [Abstract]"
       }
      }
     },
     "localname": "EquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r196"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.",
        "label": "Equity Component [Domain]",
        "terseLabel": "Equity Component [Domain]"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain": {
     "auth_ref": [
      "r296"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Class of asset.",
        "label": "Asset Class [Domain]"
       }
      }
     },
     "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueByAssetClassAxis": {
     "auth_ref": [
      "r292",
      "r298"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by class of asset.",
        "label": "Asset Class [Axis]"
       }
      }
     },
     "localname": "FairValueByAssetClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "auth_ref": [
      "r215",
      "r216",
      "r218",
      "r293",
      "r323"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.",
        "label": "Fair Value Hierarchy and NAV [Axis]"
       }
      }
     },
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByMeasurementFrequencyAxis": {
     "auth_ref": [
      "r292",
      "r293",
      "r294",
      "r295",
      "r299"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by measurement frequency.",
        "label": "Measurement Frequency [Axis]"
       }
      }
     },
     "localname": "FairValueByMeasurementFrequencyAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Fair Value Disclosures [Abstract]"
       }
      }
     },
     "localname": "FairValueDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "auth_ref": [
      "r297"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Fair Value Disclosures [Text Block]",
        "terseLabel": "Fair Value Measurements"
       }
      }
     },
     "localname": "FairValueDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueInputsLevel1Member": {
     "auth_ref": [
      "r215",
      "r216",
      "r218",
      "r293",
      "r324"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date.",
        "label": "Fair Value, Inputs, Level 1 [Member]"
       }
      }
     },
     "localname": "FairValueInputsLevel1Member",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementFrequencyDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Measurement frequency.",
        "label": "Measurement Frequency [Domain]"
       }
      }
     },
     "localname": "FairValueMeasurementFrequencyDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.",
        "label": "Fair Value Hierarchy and NAV [Domain]"
       }
      }
     },
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Finite-Lived Intangible Asset, Useful Life",
        "verboseLabel": "Weighted Average Useful Life (in years)"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r170"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Accumulated Amortization",
        "negatedLabel": "Accumulated Amortization"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": {
     "auth_ref": [],
     "calculation": {
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail": {
       "order": 6.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized after the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, after Year Five",
        "verboseLabel": "2025 and thereafter"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": {
     "auth_ref": [],
     "calculation": {
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the remainder of the fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Remainder of Fiscal Year",
        "terseLabel": "2020 (remaining three months)"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of amortization expense of assets, excluding financial assets, that lack physical substance, having a limited useful life.",
        "label": "Finite-lived Intangible Assets Amortization Expense [Table Text Block]",
        "verboseLabel": "Schedule of Amortization Expense for Amortized Intangible Assets"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "auth_ref": [
      "r172"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Five",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "auth_ref": [
      "r172"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fourth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Four",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "auth_ref": [
      "r172"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the third fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Three",
        "terseLabel": "2022"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r172"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the second fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Two",
        "terseLabel": "2021"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r163",
      "r167",
      "r170",
      "r174",
      "r325"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by major type or class of finite-lived intangible assets.",
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]",
        "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r170",
      "r325"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Gross",
        "terseLabel": "Gross Carrying Value"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r163",
      "r169"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.",
        "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]",
        "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r170"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Net",
        "terseLabel": "Net Carrying Value",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FurnitureAndFixturesGross": {
     "auth_ref": [
      "r177"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail": {
       "order": 7.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Furniture and Fixtures, Gross",
        "terseLabel": "Furniture, fixtures and office equipment"
       }
      }
     },
     "localname": "FurnitureAndFixturesGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GainsLossesOnExtinguishmentOfDebt": {
     "auth_ref": [
      "r95",
      "r193",
      "r194"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 24.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 12.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.",
        "label": "Gain (Loss) on Extinguishment of Debt",
        "negatedLabel": "Loss on extinguishment of debt",
        "terseLabel": "Loss on extinguishment of debt",
        "verboseLabel": "Loss on extinguishment of debt"
       }
      }
     },
     "localname": "GainsLossesOnExtinguishmentOfDebt",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeographicConcentrationRiskMember": {
     "auth_ref": [
      "r123"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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).",
        "label": "Geographic Concentration Risk [Member]",
        "terseLabel": "Geographic Concentration Risk"
       }
      }
     },
     "localname": "GeographicConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r155",
      "r156"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 11.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill",
        "periodEndLabel": "Balance as of September 30, 2020",
        "periodStartLabel": "Balance as of December 31, 2019",
        "positiveTerseLabel": "Business acquisition, goodwill acquired",
        "terseLabel": "Goodwill"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAcquiredDuringPeriod": {
     "auth_ref": [
      "r157"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination.",
        "label": "Goodwill, Acquired During Period",
        "terseLabel": "Goodwill arising from Acquisition"
       }
      }
     },
     "localname": "GoodwillAcquiredDuringPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r175"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for goodwill and intangible assets.",
        "label": "Goodwill and Intangible Assets Disclosure [Text Block]",
        "terseLabel": "Goodwill and Intangible Assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssets"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": {
     "auth_ref": [
      "r158"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Goodwill, Foreign Currency Translation Gain (Loss)",
        "negatedLabel": "Cumulative translation adjustment"
       }
      }
     },
     "localname": "GoodwillForeignCurrencyTranslationGainLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Goodwill [Line Items]",
        "terseLabel": "Goodwill [Line Items]"
       }
      }
     },
     "localname": "GoodwillLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill [Member]",
        "verboseLabel": "Goodwill [Member]"
       }
      }
     },
     "localname": "GoodwillMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r70",
      "r108",
      "r338",
      "r346",
      "r365"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "totalLabel": "Income before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r180"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by location in the income statement.",
        "label": "Income Statement Location [Axis]",
        "terseLabel": "Income Statement Location [Axis]"
       }
      }
     },
     "localname": "IncomeStatementLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Location in the income statement.",
        "label": "Income Statement Location [Domain]",
        "terseLabel": "Income Statement Location [Domain]"
       }
      }
     },
     "localname": "IncomeStatementLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxAuthorityAxis": {
     "auth_ref": [
      "r255"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by tax jurisdiction.",
        "label": "Income Tax Authority [Axis]",
        "terseLabel": "Income Tax Authority [Axis]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxAuthorityDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes.",
        "label": "Income Tax Authority [Domain]",
        "terseLabel": "Income Tax Authority [Domain]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r263"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.",
        "label": "Income Tax Disclosure [Text Block]",
        "terseLabel": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExaminationLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Income Tax Examination [Line Items]",
        "terseLabel": "Income Tax Examination [Line Items]"
       }
      }
     },
     "localname": "IncomeTaxExaminationLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxExaminationTable": {
     "auth_ref": [
      "r256",
      "r259"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A summary of income tax examinations that an enterprise is currently subject to or that have been completed in the current period typically including a description of the examination, the jurisdiction conducting the examination, the tax year(s) under examination, the likelihood of an unfavorable settlement, the range of possible losses, the liability recorded, the Increase or Decrease in the liability from the prior period, and any penalties and interest that have been incurred or accrued.",
        "label": "Income Tax Examination [Table]",
        "terseLabel": "Income Tax Examination [Table]"
       }
      }
     },
     "localname": "IncomeTaxExaminationTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r102",
      "r128",
      "r262"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 13.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "definitionGuidance": "Income tax provision",
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Income Tax Expense (Benefit)"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "auth_ref": [
      "r94"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 15.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.",
        "label": "Increase (Decrease) in Accounts Payable",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r94"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.",
        "label": "Increase (Decrease) in Accounts Receivable",
        "negatedLabel": "Accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccruedLiabilities": {
     "auth_ref": [
      "r94"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 16.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.",
        "label": "Increase (Decrease) in Accrued Liabilities",
        "verboseLabel": "Accrued expenses"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": {
     "auth_ref": [
      "r94"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 20.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.",
        "label": "Increase (Decrease) in Contract with Customer, Asset",
        "negatedLabel": "Unbilled receivables"
       }
      }
     },
     "localname": "IncreaseDecreaseInContractWithCustomerAsset",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r94"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Increase (Decrease) in Inventories",
        "negatedLabel": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Increase (Decrease) in Operating Capital [Abstract]",
        "terseLabel": "Changes in operating assets and liabilities, excluding impact of acquisitions:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities": {
     "auth_ref": [],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 17.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in noncurrent operating liabilities classified as other.",
        "label": "Increase (Decrease) in Other Noncurrent Liabilities",
        "terseLabel": "Long-term liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherNoncurrentLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingAssets": {
     "auth_ref": [
      "r94"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 23.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in operating assets classified as other.",
        "label": "Increase (Decrease) in Other Operating Assets",
        "negatedLabel": "Other assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherOperatingAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherReceivables": {
     "auth_ref": [
      "r94"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in receivables classified as other.",
        "label": "Increase (Decrease) in Other Receivables",
        "negatedLabel": "Royalties and other receivables"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherReceivables",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "auth_ref": [
      "r94"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 14.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.",
        "label": "Increase (Decrease) in Prepaid Expense and Other Assets",
        "negatedLabel": "Prepaid expenses and other assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities": {
     "auth_ref": [
      "r113",
      "r118"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of convertible debt securities using the if-converted method.",
        "label": "Incremental Common Shares Attributable to Dilutive Effect of Conversion of Debt Securities",
        "terseLabel": "Dilutive effect of unvested performance stock units"
       }
      }
     },
     "localname": "IncrementalCommonSharesAttributableToConversionOfDebtSecurities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r166",
      "r173"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type or class of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit.",
        "label": "Indefinite-lived Intangible Assets [Axis]",
        "terseLabel": "Indefinite-lived Intangible Assets [Axis]"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill": {
     "auth_ref": [
      "r173"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit.",
        "label": "Indefinite-lived Intangible Assets (Excluding Goodwill)",
        "verboseLabel": "Gross Carrying Value"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r166",
      "r173"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Indefinite-lived Intangible Assets, Major Class Name [Domain]",
        "terseLabel": "Indefinite-lived Intangible Assets, Major Class Name [Domain]"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IntangibleAssetsGrossExcludingGoodwill": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before accumulated amortization of intangible assets, excluding goodwill.",
        "label": "Intangible Assets, Gross (Excluding Goodwill)",
        "terseLabel": "Gross Carrying Value"
       }
      }
     },
     "localname": "IntangibleAssetsGrossExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "auth_ref": [
      "r161",
      "r168"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 10.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.",
        "label": "Intangible Assets, Net (Excluding Goodwill)",
        "terseLabel": "Intangible assets, net",
        "verboseLabel": "Net Carrying Value"
       }
      }
     },
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r69",
      "r127",
      "r309",
      "r312",
      "r349"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 10.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.",
        "label": "Interest Expense",
        "negatedLabel": "Interest expense"
       }
      }
     },
     "localname": "InterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpenseDebtExcludingAmortization": {
     "auth_ref": [
      "r83"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Interest Expense, Debt, Excluding Amortization",
        "terseLabel": "Contractual coupon interest"
       }
      }
     },
     "localname": "InterestExpenseDebtExcludingAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryCurrentTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about inventory expected to be sold or consumed within one year or operating cycle, if longer.",
        "label": "Inventory, Current [Table]",
        "terseLabel": "Inventory, Current [Table]"
       }
      }
     },
     "localname": "InventoryCurrentTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ScheduleOfInventoriesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Inventory Disclosure [Abstract]"
       }
      }
     },
     "localname": "InventoryDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryFinishedGoodsNetOfReserves": {
     "auth_ref": [
      "r28",
      "r154"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ScheduleOfInventoriesDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Inventory, Finished Goods, Net of Reserves",
        "terseLabel": "Finished products"
       }
      }
     },
     "localname": "InventoryFinishedGoodsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ScheduleOfInventoriesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Inventory [Line Items]",
        "terseLabel": "Inventory [Line Items]"
       }
      }
     },
     "localname": "InventoryLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ScheduleOfInventoriesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r1",
      "r53",
      "r153"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://www.repligencorp.com/role/ScheduleOfInventoriesDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventory, Net",
        "terseLabel": "Inventories, net",
        "totalLabel": "Total inventories, net"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets",
      "http://www.repligencorp.com/role/ScheduleOfInventoriesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryRawMaterialsNetOfReserves": {
     "auth_ref": [
      "r30",
      "r154"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ScheduleOfInventoriesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Inventory, Raw Materials, Net of Reserves",
        "terseLabel": "Raw materials"
       }
      }
     },
     "localname": "InventoryRawMaterialsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ScheduleOfInventoriesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWorkInProcessNetOfReserves": {
     "auth_ref": [
      "r29",
      "r154"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ScheduleOfInventoriesDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Inventory, Work in Process, Net of Reserves",
        "terseLabel": "Work-in-process"
       }
      }
     },
     "localname": "InventoryWorkInProcessNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ScheduleOfInventoriesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InvestmentIncomeNet": {
     "auth_ref": [
      "r79",
      "r81",
      "r82"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 9.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after accretion (amortization) of discount (premium), and investment expense, of interest income and dividend income on nonoperating securities.",
        "label": "Investment Income, Net",
        "terseLabel": "Investment income"
       }
      }
     },
     "localname": "InvestmentIncomeNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Land": {
     "auth_ref": [
      "r5",
      "r37"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail": {
       "order": 3.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before accumulated depletion of real estate held for productive use, excluding land held for sale.",
        "label": "Land",
        "terseLabel": "Land"
       }
      }
     },
     "localname": "Land",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LatestTaxYearMember": {
     "auth_ref": [
      "r255"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Latest identified tax year.",
        "label": "Latest Tax Year [Member]",
        "terseLabel": "Latest Tax Year"
       }
      }
     },
     "localname": "LatestTaxYearMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseholdImprovementsGross": {
     "auth_ref": [
      "r6",
      "r177"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail": {
       "order": 5.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before accumulated depreciation of additions or improvements to assets held under a lease arrangement.",
        "label": "Leasehold Improvements, Gross",
        "terseLabel": "Leasehold improvements"
       }
      }
     },
     "localname": "LeaseholdImprovementsGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r41"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 21.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Total liabilities",
        "totalLabel": "Total liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r25",
      "r344",
      "r360"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.",
        "label": "Liabilities and Equity",
        "totalLabel": "Total liabilities and stockholders' equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Liabilities and Equity [Abstract]",
        "terseLabel": "Liabilities and stockholders' equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r43"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 22.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.",
        "label": "Liabilities, Current",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Liabilities, Current [Abstract]",
        "terseLabel": "Current liabilities:"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongTermDebt": {
     "auth_ref": [
      "r16",
      "r190",
      "r343",
      "r357"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Long-term Debt",
        "terseLabel": "Notes, carrying value",
        "verboseLabel": "Total convertible senior notes"
       }
      }
     },
     "localname": "LongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtFairValue": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Long-term Debt, Fair Value",
        "terseLabel": "Fair value of convertible senior notes",
        "verboseLabel": "Fair value of the note"
       }
      }
     },
     "localname": "LongTermDebtFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtTextBlock": {
     "auth_ref": [
      "r195"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for long-term debt.",
        "label": "Long-term Debt [Text Block]",
        "terseLabel": "Convertible Senior Notes"
       }
      }
     },
     "localname": "LongTermDebtTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LongTermPurchaseCommitmentAmount": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The minimum amount the entity agreed to spend under the long-term purchase commitment.",
        "label": "Long-term Purchase Commitment, Amount",
        "verboseLabel": "Payments to Navigo in connection with this program, which are recorded to research and development expenses"
       }
      }
     },
     "localname": "LongTermPurchaseCommitmentAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by category of items purchased under a long-term purchase commitment.",
        "label": "Category of Item Purchased [Axis]"
       }
      }
     },
     "localname": "LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "General description of the goods or services to be purchased from the counterparty to the long-term purchase commitment.",
        "label": "Long-term Purchase Commitment, Category of Item Purchased [Domain]"
       }
      }
     },
     "localname": "LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LongtermDebtTypeAxis": {
     "auth_ref": [
      "r47"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of long-term debt.",
        "label": "Long-term Debt, Type [Axis]"
       }
      }
     },
     "localname": "LongtermDebtTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongtermDebtTypeDomain": {
     "auth_ref": [
      "r47",
      "r186"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.",
        "label": "Long-term Debt, Type [Domain]"
       }
      }
     },
     "localname": "LongtermDebtTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MachineryAndEquipmentGross": {
     "auth_ref": [
      "r6",
      "r177"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail": {
       "order": 6.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Machinery and Equipment, Gross",
        "terseLabel": "Equipment"
       }
      }
     },
     "localname": "MachineryAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The equity interest of noncontrolling shareholders, partners or other equity holders in consolidated entity.",
        "label": "Noncontrolling Interest, Ownership Percentage by Noncontrolling Owners",
        "terseLabel": "Non controlling ownership interest minimum"
       }
      }
     },
     "localname": "MinorityInterestOwnershipPercentageByNoncontrollingOwners",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_MoneyMarketFundsMember": {
     "auth_ref": [
      "r215"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Money Market Funds [Member]"
       }
      }
     },
     "localname": "MoneyMarketFundsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r92"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 25.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.",
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "totalLabel": "Total cash provided by financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]",
        "terseLabel": "Cash flows from financing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r92"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.",
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "totalLabel": "Total cash used in investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]",
        "terseLabel": "Cash flows from investing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r92",
      "r93",
      "r96"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.",
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Total cash provided by operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Cash flows from operating activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r63",
      "r66",
      "r71",
      "r96",
      "r118",
      "r347",
      "r363"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 18.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 15.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "Net Income (Loss) Attributable to Parent",
        "terseLabel": "Net income",
        "totalLabel": "Net income"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.",
        "label": "New Accounting Pronouncements, Policy [Policy Text Block]",
        "terseLabel": "Recent Accounting Standards Updates"
       }
      }
     },
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NoncompeteAgreementsMember": {
     "auth_ref": [
      "r277"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.",
        "label": "Noncompete Agreements [Member]",
        "verboseLabel": "Non-compete agreements"
       }
      }
     },
     "localname": "NoncompeteAgreementsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "auth_ref": [
      "r80"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 8.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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).",
        "label": "Nonoperating Income (Expense)",
        "totalLabel": "Other expenses, net"
       }
      }
     },
     "localname": "NonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NonrecurringAdjustmentAxis": {
     "auth_ref": [
      "r270"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information about material and nonrecurring adjustment directly attributable to the business combination(s) included in the reported pro forma revenue and earnings (supplemental pro forma information).",
        "label": "Nonrecurring Adjustment [Axis]"
       }
      }
     },
     "localname": "NonrecurringAdjustmentAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NonrecurringAdjustmentDomain": {
     "auth_ref": [
      "r270"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Material, nonrecurring adjustment(s) allocated (included) to (in) reported pro forma revenue and earnings (supplemental pro forma information).",
        "label": "Nonrecurring Adjustment [Domain]"
       }
      }
     },
     "localname": "NonrecurringAdjustmentDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NumberOfOperatingSegments": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Number of Operating Segments",
        "verboseLabel": "Number of operating segments"
       }
      }
     },
     "localname": "NumberOfOperatingSegments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_OpenTaxYear": {
     "auth_ref": [
      "r255"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tax year that remains open to examination under enacted tax laws, in CCYY format.",
        "label": "Open Tax Year",
        "verboseLabel": "Fiscal year subject to examination"
       }
      }
     },
     "localname": "OpenTaxYear",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "gYearListItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The net result for the period of deducting operating expenses from operating revenues.",
        "label": "Operating Income (Loss)",
        "totalLabel": "Income from operations"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 25.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.",
        "label": "Operating Lease, Liability, Current",
        "verboseLabel": "Operating lease liability"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 29.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.",
        "label": "Operating Lease, Liability, Noncurrent",
        "verboseLabel": "Operating lease liability, long-term"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r315"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 14.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under operating lease.",
        "label": "Operating Lease, Right-of-Use Asset",
        "terseLabel": "Operating lease right of use assets"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesRentExpenseNet": {
     "auth_ref": [
      "r314"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Rental expense for the reporting period incurred under operating leases, including minimum and any contingent rent expense, net of related sublease income.",
        "label": "Operating Leases, Rent Expense, Net",
        "verboseLabel": "Rent expense"
       }
      }
     },
     "localname": "OperatingLeasesRentExpenseNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r7",
      "r9",
      "r10",
      "r42"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.",
        "label": "Other Accrued Liabilities, Current",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "OtherAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "auth_ref": [
      "r39"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 12.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of noncurrent assets classified as other.",
        "label": "Other Assets, Noncurrent",
        "terseLabel": "Other assets"
       }
      }
     },
     "localname": "OtherAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": {
     "auth_ref": [
      "r56",
      "r307"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 14.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax",
        "verboseLabel": "Foreign currency translation adjustment"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": {
     "auth_ref": [
      "r64",
      "r67",
      "r286",
      "r287",
      "r288"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity.",
        "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent",
        "terseLabel": "Other comprehensive loss"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]",
        "terseLabel": "Other comprehensive income (loss):"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherIntangibleAssetsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Intangible assets classified as other.",
        "label": "Other Intangible Assets [Member]",
        "terseLabel": "Other intangibles"
       }
      }
     },
     "localname": "OtherIntangibleAssetsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "auth_ref": [
      "r48"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 28.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.",
        "label": "Other Liabilities, Noncurrent",
        "terseLabel": "Other liabilities, long-term"
       }
      }
     },
     "localname": "OtherLiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNoncashIncomeExpense": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 19.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other.",
        "label": "Other Noncash Income (Expense)",
        "negatedLabel": "Other"
       }
      }
     },
     "localname": "OtherNoncashIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "auth_ref": [
      "r82"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 11.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.",
        "label": "Other Nonoperating Income (Expense)",
        "terseLabel": "Other (expenses) income"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Other Nonoperating Income (Expense) [Abstract]",
        "terseLabel": "Other income (expenses):"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherReceivablesGrossCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, before allowance, of receivables classified as other, due within one year or the operating cycle, if longer.",
        "label": "Other Receivables, Gross, Current",
        "terseLabel": "Royalties and other receivables"
       }
      }
     },
     "localname": "OtherReceivablesGrossCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PatentsMember": {
     "auth_ref": [
      "r279"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Patents [Member]",
        "terseLabel": "Patents"
       }
      }
     },
     "localname": "PatentsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PayablesAndAccrualsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Payables and Accruals [Abstract]"
       }
      }
     },
     "localname": "PayablesAndAccrualsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [
      "r90"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 30.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "Payment, Tax Withholding, Share-based Payment Arrangement",
        "negatedLabel": "Payment of tax withholding obligation on vesting of restricted stock"
       }
      }
     },
     "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesGross": {
     "auth_ref": [
      "r86",
      "r283"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.",
        "label": "Payments to Acquire Businesses, Gross",
        "terseLabel": "Cash consideration"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": {
     "auth_ref": [
      "r86"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.",
        "label": "Payments to Acquire Businesses, Net of Cash Acquired",
        "negatedLabel": "Acquisitions, net of cash acquired"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r87"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "negatedLabel": "Purchases of property, plant and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireSoftware": {
     "auth_ref": [
      "r87"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow associated with the 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.",
        "label": "Payments to Acquire Software",
        "negatedLabel": "Additions to capitalized software costs"
       }
      }
     },
     "localname": "PaymentsToAcquireSoftware",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PlanNameAxis": {
     "auth_ref": [
      "r223",
      "r246"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by plan name for share-based payment arrangement.",
        "label": "Plan Name [Axis]"
       }
      }
     },
     "localname": "PlanNameAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PlanNameDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Plan name for share-based payment arrangement.",
        "label": "Plan Name [Domain]"
       }
      }
     },
     "localname": "PlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r18"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.",
        "label": "Preferred Stock, Par or Stated Value Per Share",
        "terseLabel": "Preferred stock, par value"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r18"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.",
        "label": "Preferred Stock, Shares Authorized",
        "terseLabel": "Preferred stock, shares authorized"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r18"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.",
        "label": "Preferred Stock, Shares Issued",
        "terseLabel": "Preferred stock, shares issued"
       }
      }
     },
     "localname": "PreferredStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r18"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Preferred Stock, Shares Outstanding",
        "terseLabel": "Preferred stock, shares outstanding"
       }
      }
     },
     "localname": "PreferredStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r18"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 16.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Preferred Stock, Value, Issued",
        "terseLabel": "Preferred stock, $0.01 par value, 5,000,000 shares authorized, no shares issued or outstanding"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "auth_ref": [
      "r3",
      "r34",
      "r35"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits 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.",
        "label": "Prepaid Expense and Other Assets, Current",
        "terseLabel": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrincipalOwnerMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Owner of record or known beneficial owner of more than 10 percent of the voting interests of the entity.",
        "label": "Principal Owner [Member]",
        "terseLabel": "Principal Owner"
       }
      }
     },
     "localname": "PrincipalOwnerMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ProceedsFromConvertibleDebt": {
     "auth_ref": [
      "r89"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 26.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Proceeds from Convertible Debt",
        "terseLabel": "Proceeds from issuance of convertible senior notes, net of costs",
        "verboseLabel": "Proceeds from issuance of convertible debt, net"
       }
      }
     },
     "localname": "ProceedsFromConvertibleDebt",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfCommonStock": {
     "auth_ref": [
      "r88"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 27.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash inflow from the additional capital contribution to the entity.",
        "label": "Proceeds from Issuance of Common Stock",
        "terseLabel": "Net proceeds from public offering",
        "verboseLabel": "Proceeds from issuance of common stock, net"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromStockOptionsExercised": {
     "auth_ref": [
      "r88",
      "r247"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 28.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement.",
        "label": "Proceeds from Stock Options Exercised",
        "terseLabel": "Proceeds from exercise of stock options"
       }
      }
     },
     "localname": "ProceedsFromStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductMember": {
     "auth_ref": [
      "r211"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Article or substance produced by nature, labor or machinery.",
        "label": "Product [Member]",
        "presentationGuidance": "Product",
        "verboseLabel": "Products"
       }
      }
     },
     "localname": "ProductMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ProductWarrantyAccrualClassifiedCurrent": {
     "auth_ref": [
      "r42",
      "r184",
      "r185"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Product Warranty Accrual, Current",
        "verboseLabel": "Warranties"
       }
      }
     },
     "localname": "ProductWarrantyAccrualClassifiedCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ScheduleOfAccruedLiabilitiesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r38",
      "r179"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.",
        "label": "Property, Plant and Equipment, Type [Axis]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r37",
      "r177"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Property, Plant and Equipment, Gross",
        "totalLabel": "Total property, plant and equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Property, Plant and Equipment [Line Items]",
        "terseLabel": "Property, Plant and Equipment [Line Items]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r12",
      "r13",
      "r179",
      "r361"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 9.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Property, Plant and Equipment, Net",
        "terseLabel": "Property, plant and equipment, net",
        "totalLabel": "Total property, plant and equipment, net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets",
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentOther": {
     "auth_ref": [
      "r179"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail": {
       "order": 9.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Property, Plant and Equipment, Other, Gross",
        "verboseLabel": "Other"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentOther",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r12",
      "r179"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table Text Block]",
        "verboseLabel": "Property, Plant and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetailTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r12",
      "r177"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.",
        "label": "Property, Plant and Equipment, Type [Domain]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r73",
      "r142"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.",
        "label": "Accounts Receivable, Credit Loss Expense (Reversal)",
        "verboseLabel": "Current period change for expected credit losses"
       }
      }
     },
     "localname": "ProvisionForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CreditLossesSummaryOfAllowanceForCreditLossesForAccountsReceivablesDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RelatedPartyDomain": {
     "auth_ref": [
      "r320"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Related Party [Domain]",
        "terseLabel": "Related Party [Domain]"
       }
      }
     },
     "localname": "RelatedPartyDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RelatedPartyTransactionLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Related Party Transaction [Line Items]",
        "terseLabel": "Related Party Transaction [Line Items]"
       }
      }
     },
     "localname": "RelatedPartyTransactionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Related Party Transactions [Abstract]"
       }
      }
     },
     "localname": "RelatedPartyTransactionsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": {
     "auth_ref": [
      "r217",
      "r317",
      "r319",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Related Party [Axis]",
        "terseLabel": "Related Party [Axis]"
       }
      }
     },
     "localname": "RelatedPartyTransactionsByRelatedPartyAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": {
     "auth_ref": [
      "r320"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Related Party Transactions Disclosure [Text Block]",
        "terseLabel": "Related Party Transactions"
       }
      }
     },
     "localname": "RelatedPartyTransactionsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RelatedPartyTransactions"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RepaymentsOfConvertibleDebt": {
     "auth_ref": [
      "r91"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 29.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Repayments of Convertible Debt",
        "negatedLabel": "Repayment of senior convertible notes"
       }
      }
     },
     "localname": "RepaymentsOfConvertibleDebt",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentArrangementMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Research and Development Arrangement [Member]"
       }
      }
     },
     "localname": "ResearchAndDevelopmentArrangementMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "auth_ref": [
      "r251",
      "r374"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 5.0,
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Research and Development Expense",
        "terseLabel": "Research and development"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpenseMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included.",
        "label": "Research and Development Expense [Member]",
        "terseLabel": "Research and development"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RestrictedCash": {
     "auth_ref": [
      "r101",
      "r339",
      "r358"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 8.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash restricted as to withdrawal or usage. 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.",
        "label": "Restricted Cash",
        "terseLabel": "Restricted cash"
       }
      }
     },
     "localname": "RestrictedCash",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Cash and Cash Equivalents [Domain]"
       }
      }
     },
     "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r22",
      "r202",
      "r359"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 20.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings (Accumulated Deficit)",
        "terseLabel": "Retained earnings"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings [Member]",
        "terseLabel": "Retained Earnings/ (Accumulated Deficit)"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": {
     "auth_ref": [
      "r208",
      "r209"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 7.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Revenue from Contract with Customer, Including Assessed Tax",
        "terseLabel": "Revenue"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerIncludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/RevenueFromSignificantCustomersDetail",
      "http://www.repligencorp.com/role/SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "auth_ref": [
      "r214"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.",
        "label": "Revenue from Contract with Customer [Text Block]",
        "verboseLabel": "Revenue Recognition"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RevenueRecognition"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenuesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Revenues [Abstract]",
        "terseLabel": "Revenue:"
       }
      }
     },
     "localname": "RevenuesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RisksAndUncertaintiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Risks and Uncertainties [Abstract]"
       }
      }
     },
     "localname": "RisksAndUncertaintiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RoyaltyMember": {
     "auth_ref": [
      "r211"
     ],
     "lang": {
      "en-US": {
       "role": {
        "definitionGuidance": "Royalty and Other Revenue",
        "documentation": "Money for usage-based right to asset.",
        "label": "Royalty [Member]",
        "verboseLabel": "Royalty and Other Revenue"
       }
      }
     },
     "localname": "RoyaltyMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/SummaryOfDisaggregationOfProductRevenuesFromContractsWithCustomersByMajorProductLineDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SaleOfStockNameOfTransactionDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Sale of the entity's stock, including, but not limited to, initial public offering (IPO) and private placement.",
        "label": "Sale of Stock [Domain]"
       }
      }
     },
     "localname": "SaleOfStockNameOfTransactionDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SalesRevenueNetMember": {
     "auth_ref": [
      "r124"
     ],
     "lang": {
      "en-US": {
       "role": {
        "definitionGuidance": "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.",
        "label": "Revenue Benchmark [Member]",
        "terseLabel": "Sales Revenue",
        "verboseLabel": "Total Revenue"
       }
      }
     },
     "localname": "SalesRevenueNetMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueByGeographicAreaDetails",
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail",
      "http://www.repligencorp.com/role/SegmentReportingTables"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the components of accrued liabilities.",
        "label": "Schedule of Accrued Liabilities [Table Text Block]",
        "verboseLabel": "Accrued Liabilities"
       }
      }
     },
     "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetailTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock": {
     "auth_ref": [
      "r61"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the components of accumulated other comprehensive income (loss).",
        "label": "Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block]",
        "terseLabel": "Summary of Changes in Accumulated Other Comprehensive Income"
       }
      }
     },
     "localname": "ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLossTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock": {
     "auth_ref": [
      "r163"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the characteristics, including initial carrying value, residual amount, weighted average useful life, of finite-lived intangible assets acquired during the period by major class. A major class is composed of intangible assets that can be grouped together because they are similar, either by nature or by their use in the operations of the company.",
        "label": "Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block]",
        "terseLabel": "Schedule of Identified Intangible Assets and Estimated Useful Lives"
       }
      }
     },
     "localname": "ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": {
     "auth_ref": [
      "r271",
      "r272"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule reflecting each material business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities.",
        "label": "Schedule of Business Acquisitions, by Acquisition [Table]",
        "terseLabel": "Schedule of Business Acquisitions, by Acquisition [Table]"
       }
      }
     },
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail",
      "http://www.repligencorp.com/role/AcquisitionsUnauditedSupplementalProFormaInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": {
     "auth_ref": [
      "r221",
      "r244",
      "r248"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about amount recognized for award under share-based payment arrangement. Includes, but is not limited to, amount expensed in statement of income or comprehensive income, amount capitalized in statement of financial position, and corresponding reporting line item in financial statements.",
        "label": "Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table]",
        "terseLabel": "Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table]"
       }
      }
     },
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": {
     "auth_ref": [
      "r221",
      "r244",
      "r248"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.",
        "label": "Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table Text Block]",
        "terseLabel": "Stock-Based Compensation Expense"
       }
      }
     },
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable": {
     "auth_ref": [
      "r132"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure about the extent of the entity's reliance on its major customers.",
        "label": "Schedule of Revenue by Major Customers, by Reporting Segments [Table]",
        "terseLabel": "Schedule of Revenue by Major Customers, by Reporting Segments [Table]"
       }
      }
     },
     "localname": "ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingPercentageOfRevenueFromSignificantCustomersDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "auth_ref": [
      "r163",
      "r169"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Schedule of Finite-Lived Intangible Assets [Table]",
        "terseLabel": "Schedule of Finite-Lived Intangible Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AmortizationExpenseForAmortizedIntangibleAssetsDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfGoodwillTable": {
     "auth_ref": [
      "r159",
      "r160"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule of goodwill and the changes during the year due to acquisition, sale, impairment or for other reasons.",
        "label": "Schedule of Goodwill [Table]",
        "terseLabel": "Schedule of Goodwill [Table]"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ChangesInCarryingValueOfGoodwillDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfGoodwillTextBlock": {
     "auth_ref": [
      "r159",
      "r160"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.",
        "label": "Schedule of Goodwill [Table Text Block]",
        "verboseLabel": "Changes in Carrying Value of Goodwill"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r11",
      "r31",
      "r32",
      "r33"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Schedule of Inventory, Current [Table Text Block]",
        "verboseLabel": "Inventories"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetailTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfProductInformationTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule detailing quantitative information concerning products or product lines by product or product line.",
        "label": "Schedule of Product Information [Table]"
       }
      }
     },
     "localname": "ScheduleOfProductInformationTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r38",
      "r179"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table]",
        "terseLabel": "Property, Plant and Equipment [Table]"
       }
      }
     },
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/PropertyPlantAndEquipmentDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": {
     "auth_ref": [
      "r275"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.",
        "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]",
        "terseLabel": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed"
       }
      }
     },
     "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the extent of the entity's reliance on its major customers, if revenues from transactions with a single external customer amount to 10 percent or more of entity revenues, including the disclosure of that fact, the total amount of revenues from each such customer, and the identity of the reportable segment or segments reporting the revenues. The entity need not disclose the identity of a major customer or the amount of revenues that each segment reports from that customer. For these purposes, a group of companies known to the entity to be under common control is considered a single customer, and the federal government, a state government, a local government such as a county or municipality, or a foreign government is each considered a single customer.",
        "label": "Schedule of Revenue by Major Customers by Reporting Segments [Table Text Block]",
        "verboseLabel": "Percentage of Revenue from Significant Customers"
       }
      }
     },
     "localname": "ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r223",
      "r246"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about share-based payment arrangement.",
        "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]",
        "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail",
      "http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": {
     "auth_ref": [
      "r228"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Schedule of Share-based Compensation, Restricted Stock Units Award Activity [Table Text Block]",
        "terseLabel": "Summary of Restricted Stock Unit Activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r228",
      "r238",
      "r241"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.",
        "label": "Share-based Compensation, Stock Options, Activity [Table Text Block]",
        "terseLabel": "Summary of Option Activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock": {
     "auth_ref": [
      "r118"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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).",
        "label": "Schedule of Weighted Average Number of Shares [Table Text Block]",
        "terseLabel": "Basic and Diluted Weighted Average Shares Outstanding"
       }
      }
     },
     "localname": "ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock": {
     "auth_ref": [
      "r121",
      "r124",
      "r125",
      "r126",
      "r302",
      "r304"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Schedules of Concentration of Risk, by Risk Factor [Table Text Block]",
        "terseLabel": "Percentage by Geographic Area or Significant Customers"
       }
      }
     },
     "localname": "SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReportingTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentReportingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Segment Reporting [Abstract]"
       }
      }
     },
     "localname": "SegmentReportingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r133"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.",
        "label": "Segment Reporting Disclosure [Text Block]",
        "terseLabel": "Segment Reporting"
       }
      }
     },
     "localname": "SegmentReportingDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SegmentReporting"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r78",
      "r152"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 6.0,
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.",
        "label": "Selling, General and Administrative Expense",
        "terseLabel": "Selling, general and administrative"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpensesMember": {
     "auth_ref": [
      "r84"
     ],
     "lang": {
      "en-US": {
       "role": {
        "definitionGuidance": "Selling, general and administrative",
        "documentation": "Primary financial statement caption encompassing selling, general and administrative expense.",
        "label": "Selling, General and Administrative Expenses [Member]",
        "terseLabel": "Selling, general and administrative"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpensesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r94"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Share-based Compensation",
        "terseLabel": "Stock-based compensation expense"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/role/StockBasedCompensationExpenseDetail",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "auth_ref": [
      "r224"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period",
        "terseLabel": "Incentive options, vesting period"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Additional Disclosures [Abstract]",
        "terseLabel": "Weighted-Average Remaining Contractual Term (in years)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "auth_ref": [
      "r234"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited in Period",
        "negatedLabel": "Forfeited/expired/cancelled"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r236"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period",
        "terseLabel": "Awarded"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r236"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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).",
        "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"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "auth_ref": [
      "r235"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number",
        "periodEndLabel": "Unvested at September 30, 2020",
        "periodStartLabel": "Unvested at December 31, 2019",
        "terseLabel": "Restricted stock units, outstanding"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]",
        "terseLabel": "Options Outstanding"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms": {
     "auth_ref": [
      "r242"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average remaining contractual term for equity-based awards excluding options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Outstanding, Weighted Average Remaining Contractual Terms",
        "terseLabel": "Unvested at September 30, 2020"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r237"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period",
        "negatedLabel": "Vested"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue": {
     "auth_ref": [
      "r240"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value",
        "terseLabel": "Total grant date fair value of restricted stock units vested"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail",
      "http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "auth_ref": [
      "r246"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant",
        "terseLabel": "Incentive options, vesting period"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract": {
     "auth_ref": [],
     "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)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r231"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number",
        "terseLabel": "Options exercisable at September 30, 2020 | shares"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r231"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price",
        "terseLabel": "Options exercisable at September 30, 2020"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "auth_ref": [
      "r240"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value",
        "terseLabel": "Aggregate intrinsic value of stock options exercised"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod": {
     "auth_ref": [
      "r232"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Net number of share options (or share units) granted during the period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures",
        "terseLabel": "Granted | shares"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r239"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Weighted average grant date fair value of share-based awards granted"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "auth_ref": [
      "r246"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value",
        "terseLabel": "Options outstanding at September 30, 2020"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r230",
      "r246"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of options outstanding, including both vested and non-vested options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number",
        "periodEndLabel": "Options outstanding at September 30, 2020 | shares",
        "periodStartLabel": "Options outstanding at December 31, 2019 | shares",
        "terseLabel": "Stock options, outstanding"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding [Roll Forward]",
        "terseLabel": "Options Outstanding"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r229"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price",
        "periodEndLabel": "Options outstanding at September 30, 2020",
        "periodStartLabel": "Options outstanding at December 31, 2019",
        "terseLabel": "Stock options, weighted average exercise price"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]",
        "terseLabel": "Weighted-Average Exercise Price Per Share"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue": {
     "auth_ref": [
      "r241"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value",
        "terseLabel": "Vested and expected to vest at September 30, 2020"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": {
     "auth_ref": [
      "r242"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number",
        "terseLabel": "Vested and expected to vest at September 30, 2020(1) | shares"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r220",
      "r226"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Award under share-based payment arrangement.",
        "label": "Equity Award [Domain]",
        "terseLabel": "Equity Award [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityTables",
      "http://www.repligencorp.com/role/SummaryOfOptionActivityParentheticalDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail",
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityParentheticalDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price",
        "terseLabel": "Exercised"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price",
        "terseLabel": "Granted"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationAwardTrancheOneMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "First portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period.",
        "label": "Share-based Compensation Award, Tranche One [Member]",
        "terseLabel": "Vest Over Three Year"
       }
      }
     },
     "localname": "ShareBasedCompensationAwardTrancheOneMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SharePrice": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Price of a single share of a number of saleable stocks of a company.",
        "label": "Share Price",
        "terseLabel": "Closing price of common stock"
       }
      }
     },
     "localname": "SharePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": {
     "auth_ref": [
      "r224"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of vesting of award under share-based payment arrangement.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage",
        "terseLabel": "Incentive options, vesting percentage"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value [Abstract]",
        "terseLabel": "Aggregate Intrinsic Value"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Intrinsic value of outstanding award under share-based payment arrangement. Excludes share and unit options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Outstanding",
        "terseLabel": "Unvested at September 30, 2020"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfRestrictedStockUnitActivityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Intrinsic value of vested award under share-based payment arrangement. Excludes share and unit options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Vested",
        "terseLabel": "Aggregate intrinsic value of restricted stock units vested"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": {
     "auth_ref": [
      "r225"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period",
        "terseLabel": "Incentive options, term"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": {
     "auth_ref": [
      "r246"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value",
        "terseLabel": "Options exercisable at September 30, 2020"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r246"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term",
        "terseLabel": "Options exercisable at September 30, 2020"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r242"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term",
        "terseLabel": "Options outstanding at September 30, 2020"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r242"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term",
        "terseLabel": "Vested and expected to vest at September 30, 2020"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1": {
     "auth_ref": [
      "r227"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested in Period, Fair Value",
        "terseLabel": "Total fair value of stock options vested"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.",
        "label": "Shares, Outstanding",
        "periodEndLabel": "Balance (in shares)",
        "periodStartLabel": "Balance (in shares)"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation",
        "terseLabel": "Tax withholding on vesting of restricted stock units (in shares)"
       }
      }
     },
     "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r106"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "Significant Accounting Policies [Text Block]",
        "terseLabel": "Summary of Significant Accounting Policies"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SummaryOfSignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StatementClassOfStockAxis": {
     "auth_ref": [
      "r17",
      "r18",
      "r19",
      "r196"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by the different classes of stock of the entity.",
        "label": "Class of Stock [Axis]"
       }
      }
     },
     "localname": "StatementClassOfStockAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetail",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail",
      "http://www.repligencorp.com/role/EarningsPerShare",
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SubsequentEvents"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r52",
      "r196"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]",
        "terseLabel": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Statement [Line Items]",
        "terseLabel": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLoss",
      "http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLossTables",
      "http://www.repligencorp.com/role/Acquisitions",
      "http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/role/AcquisitionsTables",
      "http://www.repligencorp.com/role/CommitmentsAndContingencies",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetail",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetailTables",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotes",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesTables",
      "http://www.repligencorp.com/role/EarningsPerShare",
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/EarningsPerShareTables",
      "http://www.repligencorp.com/role/FairValueMeasurements",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables",
      "http://www.repligencorp.com/role/IncomeTaxes",
      "http://www.repligencorp.com/role/IncomeTaxesTables",
      "http://www.repligencorp.com/role/RelatedPartyTransactions",
      "http://www.repligencorp.com/role/SegmentReportingAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SegmentReportingTables",
      "http://www.repligencorp.com/role/StockholdersEquity",
      "http://www.repligencorp.com/role/StockholdersEquityTables",
      "http://www.repligencorp.com/role/SubsequentEvents",
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfSignificantAccountingPolicies",
      "http://www.repligencorp.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.",
        "label": "Statement [Table]",
        "terseLabel": "Statement [Table]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLoss",
      "http://www.repligencorp.com/role/AccumulatedOtherComprehensiveLossTables",
      "http://www.repligencorp.com/role/Acquisitions",
      "http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail",
      "http://www.repligencorp.com/role/AcquisitionsTables",
      "http://www.repligencorp.com/role/CommitmentsAndContingencies",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetAdditionalInformationDetail",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetail",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetailTables",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetsParenthetical",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquityParenthetical",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotes",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesConvertibleDebtDetail",
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesTables",
      "http://www.repligencorp.com/role/EarningsPerShare",
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail",
      "http://www.repligencorp.com/role/EarningsPerShareTables",
      "http://www.repligencorp.com/role/FairValueMeasurements",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsTables",
      "http://www.repligencorp.com/role/IncomeTaxes",
      "http://www.repligencorp.com/role/IncomeTaxesTables",
      "http://www.repligencorp.com/role/RelatedPartyTransactions",
      "http://www.repligencorp.com/role/SegmentReportingTables",
      "http://www.repligencorp.com/role/StockholdersEquity",
      "http://www.repligencorp.com/role/StockholdersEquityTables",
      "http://www.repligencorp.com/role/SubsequentEvents",
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfSignificantAccountingPolicies",
      "http://www.repligencorp.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssued1": {
     "auth_ref": [
      "r98",
      "r99",
      "r100"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The fair value of stock issued in noncash financing activities.",
        "label": "Stock Issued",
        "verboseLabel": "Fair value of common stock issued for acquisition of C Technologies, Inc."
       }
      }
     },
     "localname": "StockIssued1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesAcquisitions": {
     "auth_ref": [
      "r18",
      "r19",
      "r202"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares of stock issued during the period pursuant to acquisitions.",
        "label": "Stock Issued During Period, Shares, Acquisitions",
        "verboseLabel": "Issuance of common stock pursuant to the acquisition of C Technologies, Inc., (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesAcquisitions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities": {
     "auth_ref": [
      "r51",
      "r196",
      "r197",
      "r202"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares issued during the period as a result of the conversion of convertible securities.",
        "label": "Stock Issued During Period, Shares, Conversion of Convertible Securities",
        "terseLabel": "Conversion of Convertible Securities Stock Issued",
        "verboseLabel": "Conversion of Convertible Securities Stock Issued | shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/EarningsPerShareAdditionalInformationDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits": {
     "auth_ref": [
      "r18",
      "r19",
      "r196",
      "r197",
      "r202"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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).",
        "label": "Stock Issued During Period, Shares, Conversion of Units",
        "verboseLabel": "Issuance of common stock for debt conversion (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesConversionOfUnits",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesNewIssues": {
     "auth_ref": [
      "r18",
      "r19",
      "r196",
      "r202"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of new stock issued during the period.",
        "label": "Stock Issued During Period, Shares, New Issues",
        "terseLabel": "Proceeds from issuance of common stock, net of issuance costs (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": {
     "auth_ref": [
      "r18",
      "r19",
      "r196",
      "r202"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).",
        "label": "Stock Issued During Period, Shares, Share-based Compensation, Net of Forfeitures",
        "terseLabel": "Exercise of stock options and releases of restricted stock (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r18",
      "r19",
      "r196",
      "r202",
      "r233"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period",
        "negatedLabel": "Exercised | shares",
        "terseLabel": "Exercised number of shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfOptionActivityDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueAcquisitions": {
     "auth_ref": [
      "r52",
      "r196",
      "r202"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Value of stock issued pursuant to acquisitions during the period.",
        "label": "Stock Issued During Period, Value, Acquisitions",
        "verboseLabel": "Issuance of common stock pursuant to the acquisition of C Technologies, Inc."
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueAcquisitions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities": {
     "auth_ref": [
      "r52",
      "r196",
      "r202"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The gross value of stock issued during the period upon the conversion of convertible securities.",
        "label": "Stock Issued During Period, Value, Conversion of Convertible Securities",
        "terseLabel": "Conversion of Convertible Securities Stock Issued | value"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueConversionOfConvertibleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueConversionOfUnits": {
     "auth_ref": [
      "r52",
      "r196",
      "r202"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "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).",
        "label": "Stock Issued During Period, Value, Conversion of Units",
        "verboseLabel": "Issuance of common stock for debt conversion"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueConversionOfUnits",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueNewIssues": {
     "auth_ref": [
      "r18",
      "r19",
      "r196",
      "r202"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.",
        "label": "Stock Issued During Period, Value, New Issues",
        "terseLabel": "Proceeds from issuance of common stock, net of issuance costs"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": {
     "auth_ref": [
      "r18",
      "r19",
      "r202",
      "r222",
      "r239"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).",
        "label": "Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures",
        "terseLabel": "Exercise of stock options and releases of restricted stock"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r19",
      "r23",
      "r24",
      "r138"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 15.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.",
        "label": "Stockholders' Equity Attributable to Parent",
        "periodEndLabel": "Balance",
        "periodStartLabel": "Balance",
        "totalLabel": "Total stockholders' equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ChangeInAccumulatedOtherComprehensiveLossDetail",
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets",
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Stockholders' Equity Attributable to Parent [Abstract]",
        "terseLabel": "Stockholders' equity:"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "auth_ref": [
      "r203"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.",
        "label": "Stockholders' Equity Note Disclosure [Text Block]",
        "terseLabel": "Stockholders' Equity"
       }
      }
     },
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquity"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubsequentEventMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event [Member]"
       }
      }
     },
     "localname": "SubsequentEventMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "auth_ref": [
      "r321"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Axis]",
        "terseLabel": "Subsequent Event Type [Axis]"
       }
      }
     },
     "localname": "SubsequentEventTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "auth_ref": [
      "r321"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Domain]",
        "terseLabel": "Subsequent Event Type [Domain]"
       }
      }
     },
     "localname": "SubsequentEventTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConvertibleSeniorNotesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SubsequentEventsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Subsequent Events [Abstract]"
       }
      }
     },
     "localname": "SubsequentEventsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r322"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.",
        "label": "Subsequent Events [Text Block]",
        "verboseLabel": "Subsequent Events"
       }
      }
     },
     "localname": "SubsequentEventsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/SubsequentEvents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubsidiarySaleOfStockAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of sale of the entity's stock.",
        "label": "Sale of Stock [Axis]"
       }
      }
     },
     "localname": "SubsidiarySaleOfStockAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/RelatedPartyTransactionsAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SummaryOfIncomeTaxExaminationsTextBlock": {
     "auth_ref": [
      "r256",
      "r259"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of income tax examinations that an enterprise is currently subject to or that have been completed in the current period typically including a description of the examination, the jurisdiction conducting the examination, the tax year(s) under examination, the likelihood of an unfavorable settlement, the range of possible losses, the liability recorded, the increase or decrease in the liability from the prior period, and any penalties and interest that have been recorded.",
        "label": "Summary of Income Tax Examinations [Table Text Block]",
        "terseLabel": "Summary of Tax Returns Periods Subject to Examination by Federal, State and International Taxing Authorities"
       }
      }
     },
     "localname": "SummaryOfIncomeTaxExaminationsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SupplementalBalanceSheetDisclosuresTextBlock": {
     "auth_ref": [
      "r55"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for supplemental balance sheet disclosures, including descriptions and amounts for assets, liabilities, and equity.",
        "label": "Supplemental Balance Sheet Disclosures [Text Block]",
        "verboseLabel": "Consolidated Balance Sheet Detail"
       }
      }
     },
     "localname": "SupplementalBalanceSheetDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheetDetail"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SupplementalCashFlowElementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Supplemental Cash Flow Elements [Abstract]",
        "verboseLabel": "Supplemental disclosure of non-cash investing and financing activities:"
       }
      }
     },
     "localname": "SupplementalCashFlowElementsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxPeriodAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information about the period subject to enacted tax laws.",
        "label": "Tax Period [Axis]",
        "terseLabel": "Tax Period [Axis]"
       }
      }
     },
     "localname": "TaxPeriodAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxPeriodDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Identified tax period.",
        "label": "Tax Period [Domain]",
        "terseLabel": "Tax Period [Domain]"
       }
      }
     },
     "localname": "TaxPeriodDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/SummaryOfTaxReturnsPeriodsSubjectToExaminationByFederalStateAndInternationalTaxAuthoritiesDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Text Block [Abstract]"
       }
      }
     },
     "localname": "TextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_TradeNamesMember": {
     "auth_ref": [
      "r276"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof.",
        "label": "Trade Names [Member]",
        "terseLabel": "Trademark and tradename [Member]"
       }
      }
     },
     "localname": "TradeNamesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsEstimatedUsefulLifeAndFairValueDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TrademarksAndTradeNamesMember": {
     "auth_ref": [
      "r276"
     ],
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Trademarks and Trade Names [Member]",
        "verboseLabel": "Trademark and tradename"
       }
      }
     },
     "localname": "TrademarksAndTradeNamesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsFairValueOfNetAssetsAcquiredDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TrademarksMember": {
     "auth_ref": [
      "r276"
     ],
     "lang": {
      "en-US": {
       "role": {
        "definitionGuidance": "Trademark",
        "documentation": "Rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style.",
        "label": "Trademarks [Member]",
        "terseLabel": "Trademark"
       }
      }
     },
     "localname": "TrademarksMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/GoodwillAndIntangibleAssetsDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TrustForBenefitOfEmployeesMember": {
     "auth_ref": [
      "r217",
      "r317",
      "r319"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Trust created by the entity that exists for the benefit of its employees, such as pension and profit-sharing trusts that are managed by or under the trusteeship of the entity's management.",
        "label": "Trust for Benefit of Employees [Member]",
        "terseLabel": "Employees"
       }
      }
     },
     "localname": "TrustForBenefitOfEmployeesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TypeOfAdoptionMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Adoption and early adoption of sources of change to generally accepted accounting principles (GAAP) in the United States. The FASB released the FASB Accounting Standards Codification as the authoritative source of literature effective for interim and annual periods ending after September 15, 2009. As part of the Codification process, the FASB issues Accounting Standards Updates to amend the Codification but otherwise the Accounting Standards Updates are not authoritative in their own right. All previous accounting standards (such as FASB Statements of Financial Accounting Standards, FASB Interpretations, FASB Staff Positions, Emerging Issues Task Force Consensuses, other pronouncements of the FASB or other designated bodies, or other forms of GAAP are considered accounting pronouncements) were superseded upon the adoption of the Codification. For an interim period, references to the superseded standards are included to help users transition from the previous accounting hierarchy and will be removed from future versions of this taxonomy.",
        "label": "Type of Adoption [Domain]",
        "terseLabel": "Type of Adoption [Domain]"
       }
      }
     },
     "localname": "TypeOfAdoptionMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/AcquisitionsAdditionalInformationDetail",
      "http://www.repligencorp.com/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.repligencorp.com/role/FairValueMeasurementAdditionalInformationDetail",
      "http://www.repligencorp.com/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnbilledReceivablesCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount received for services rendered and products shipped, but not yet billed, for non-contractual agreements due within one year or the normal operating cycle, if longer.",
        "label": "Unbilled Receivables, Current",
        "verboseLabel": "Unbilled receivables"
       }
      }
     },
     "localname": "UnbilledReceivablesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_VestingAxis": {
     "auth_ref": [
      "r246"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by vesting schedule of award under share-based payment arrangement.",
        "label": "Vesting [Axis]",
        "terseLabel": "Vesting [Axis]"
       }
      }
     },
     "localname": "VestingAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VestingDomain": {
     "auth_ref": [
      "r246"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Vesting schedule of award under share-based payment arrangement.",
        "label": "Vesting [Domain]",
        "terseLabel": "Vesting [Domain]"
       }
      }
     },
     "localname": "VestingDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": {
     "auth_ref": [
      "r116"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail": {
       "order": 1.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.",
        "label": "Weighted Average Number Diluted Shares Outstanding Adjustment",
        "totalLabel": "Dilutive potential common shares"
       }
      }
     },
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r111",
      "r116"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.",
        "label": "Weighted Average Number of Shares Outstanding, Diluted",
        "terseLabel": "Diluted",
        "totalLabel": "Weighted average shares used in computing net income per share - diluted"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]",
        "presentationGuidance": "Weighted average common shares outstanding:"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r109",
      "r116"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail": {
       "order": 4.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.",
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "terseLabel": "Basic",
        "verboseLabel": "Weighted average shares used in computing net income per share - diluted"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/ConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesRestrictedStock": {
     "auth_ref": [
      "r110"
     ],
     "calculation": {
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail": {
       "order": 2.0,
       "parentTag": "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "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.",
        "label": "Weighted Average Number of Shares, Restricted Stock",
        "verboseLabel": "Stock options and restricted stock awards"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesRestrictedStock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.repligencorp.com/role/EarningsPerShareReconciliationOfBasicAndDilutedSharesAmountsDetail"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 6
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e7018-107765"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4332-108586"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=SL98516268-108586"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08.(e),(f))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08.(f))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08.(h)(2))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "http://asc.fasb.org/topic&trid=2122369"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22694-107794"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1448-109256"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e2646-109256"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1505-109256"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1252-109256"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1930-109256"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=SL5780133-109256"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1337-109256"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117327953&loc=d3e4984-109258"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "http://asc.fasb.org/topic&trid=2144383"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6327-108592"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6442-108592"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(14))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9031-108599"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9038-108599"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9054-108599"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "http://asc.fasb.org/topic&trid=2134510"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=118952595&loc=d3e4647-111522"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=118952595&loc=d3e4428-111522"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=118952595&loc=d3e4531-111522"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=d3e5074-111524"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=27010918&loc=d3e74512-122707"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=118955202&loc=SL82895884-210446"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(19))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919244-210447"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919269-210447"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919272-210447"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919230-210447"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919236-210447"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=118955579&loc=SL82922888-210455"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=118955579&loc=SL82922895-210455"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=68048583&loc=d3e3636-108311"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116846819&loc=d3e3927-108312"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.BB)",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=27011343&loc=d3e100047-122729"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=77989000&loc=SL49117168-202975"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13854-109267"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(2)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "((a)(1),(b))",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(27))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(2)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "350",
   "URI": "http://asc.fasb.org/topic&trid=2144416"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "http://asc.fasb.org/topic&trid=2144648"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14326-108349"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "http://asc.fasb.org/topic&trid=2127136"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68070138&loc=d3e11281-110244"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12524-110249"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=6802200&loc=SL6230698-112601"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=51819886&loc=SL6014347-161799"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=109500613&loc=SL6031897-161870"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=109500613&loc=SL6031897-161870"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=109500613&loc=SL6031897-161870"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=109500613&loc=SL6031898-161870"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=109500613&loc=SL6036836-161870"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "40",
   "SubTopic": "50",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=117329964&loc=d3e12317-112629"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "40",
   "SubTopic": "50",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=117329964&loc=d3e12355-112629"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "http://asc.fasb.org/topic&trid=2208564"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21463-112644"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21475-112644"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21506-112644"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21506-112644"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21521-112644"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21538-112644"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=27012166&loc=d3e187085-122770"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "http://asc.fasb.org/topic&trid=2208762"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944033&loc=SL49130531-203044"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944033&loc=SL49130532-203044"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130551-203045"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL108322424-203045"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130543-203045"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130545-203045"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130549-203045"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "http://asc.fasb.org/topic&trid=49130388"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(n)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118257860&loc=d3e4179-114921"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116855982&loc=d3e4534-113899"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a),(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(3)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=SL79508275-113901"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.F)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=115993241&loc=d3e301413-122809"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=118258462&loc=d3e11149-113907"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=118258462&loc=d3e11178-113907"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "730",
   "URI": "http://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e31917-109318"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32687-109319"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32698-109319"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32718-109319"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32718-109319"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32639-109319"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "217",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=117331294&loc=d3e36027-109320"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116825942&loc=d3e330036-122817"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116825942&loc=d3e330036-122817"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=109238882&loc=d3e38679-109324"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "http://asc.fasb.org/topic&trid=2144680"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116868678&loc=d3e1043-128460"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(2)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(3)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(5))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(4)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "37",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116868840&loc=d3e2207-128464"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116869197&loc=d3e4845-128472"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116869197&loc=d3e4845-128472"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5263-128473"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5263-128473"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5333-128473"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "38",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5504-128473"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6578-128477"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6613-128477"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=35744584&loc=d3e6927-128479"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)(1)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=35744584&loc=d3e6927-128479"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=35744584&loc=d3e7008-128479"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "805",
   "URI": "http://asc.fasb.org/topic&trid=2303972"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4569616-111683"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4569643-111683"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(3)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c),(3)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5618551-113959"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624163-113959"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)(1)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)(2)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19279-110258"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=SL6742756-110258"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=116690757&loc=SL116692626-108610"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13433-108611"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13531-108611"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13537-108611"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13537-108611"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=98513438&loc=d3e33268-110906"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32022-110900"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b,c)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=114775744&loc=d3e28541-108399"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=114775744&loc=d3e28551-108399"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=114775744&loc=d3e28555-108399"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=77902758&loc=d3e41499-112717"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918627-209977"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918627-209977"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39603-107864"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "850",
   "URI": "http://asc.fasb.org/topic&trid=2122745"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "http://asc.fasb.org/topic&trid=2122774"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "340",
   "Topic": "928",
   "URI": "http://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e61929-109447"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e61929-109447"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e62059-109447"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e62059-109447"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e62395-109447"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e62395-109447"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "33",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e62479-109447"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "33",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e62479-109447"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=SL6807758-109447"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=SL6807758-109447"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)(1)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e61872-109447"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)(2)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e61872-109447"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "940",
   "URI": "http://asc.fasb.org/extlink&oid=68072869&loc=d3e41242-110953"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(1)(a))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(7))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(13))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(1))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(16))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.17)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(15))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(23))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.9)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(8))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Subparagraph": "(c)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=75038535&loc=d3e64711-112823"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Subparagraph": "e",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=75038535&loc=d3e64711-112823"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=75038535&loc=d3e64711-112823"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(16))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(15)(b)(1))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16)(a))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(2))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.1)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.(a),19)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116637232&loc=SL114874131-224263"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116637232&loc=SL114874131-224263"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116637232&loc=SL114874131-224263"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=99380617&loc=SL75241803-196195"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(13))",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=6488278&loc=d3e603758-122996"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "http://asc.fasb.org/extlink&oid=6589523&loc=d3e617274-123014"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=6590653&loc=d3e638233-123024"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756"
  },
  "r375": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b"
  },
  "r376": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r377": {
   "Name": "Form 10-Q",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-13"
  },
  "r378": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1-"
  },
  "r379": {
   "Name": "Regulation 12B",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.14)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r380": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.17)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6801-107765"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(2))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(5))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.24)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.25)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6812-107765"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-30)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.9)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "210",
   "URI": "http://asc.fasb.org/topic&trid=2122208"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669646-108580"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a),(b),(c)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669646-108580"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669646-108580"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e637-108580"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6812-107765"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e681-108580"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669686-108580"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL34724394-108580"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669619-108580"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669619-108580"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669619-108580"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669625-108580"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669625-108580"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e557-108580"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(210.5-03(11))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6911-107765"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(10))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(21))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(5))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(8))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(b)(4))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7(a),(b))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6935-107765"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.8)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.9)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "8",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "220",
   "URI": "http://asc.fasb.org/topic&trid=2134417"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3213-108585"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3213-108585"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3255-108585"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3255-108585"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6935-107765"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3521-108585"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3536-108585"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3044-108585"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4304-108586"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4313-108586"
  }
 },
 "version": "2.1"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>90
<FILENAME>0001193125-20-286931-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001193125-20-286931-xbrl.zip
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
M0UCL;5! @U)S2P1,P'5U./DV!X>L<*M,0%^I953893+UJDU"L5EMS=G,CI-
M/&#*'&?ERW?E.+LW;8Y#/* (\8"BH0+B 46-!Q0-*1 /"/& :?1$F-UFT28<
MQ -"/"!,LI0G&<0#0CP@S+7<:)!%FS\ Z#P#>IITY& X_S"IL3EQ".Z;+^.Y
M210<EP\;=PL)?+9PK YSNF+$T>5DR\86KL(<.[';$F)N3QES*QK_(7CK%,%;
MHG$=@K>R#-X2#0T0:EU ID*H=0&9NJE@WT[1966L9+@?8<H$IYWM8R%1D:2-
MFV?>JI"1++.,9&HF,6?Q'(<()!$BD$1#!40@B1J!)!I2( ()(I#2Z(DPOG?1
M)AQ$($$$$DRRE"<91"!!!!+,M=QHD$6;/P#H/ ,:(I"$\,XF/,O*'8$DVAR#
MK&\99WT3"0R01Z8TK.YAUR.F[F&#!V&U;>,1DZ%#QHC*3G[IIVTN5FYKOR%B
M1 2ZN*Q?[BEG^%XC+A,4VKKNCWV+-FL,"++=H,9DV_@W7:C9&$L6E[83-<J$
MC\YX8CD?.)@CW0DCQUJQ0%5NVQS[XYFNW6/)9@(5>X0(_L[RU##:4_8$A.5/
M4T)36"R%Q_R#3EBZ)@N/K&5I,[V^EFY'J+A,KY^1-'2T+I \ ?5YD>ZS^;,[
M^V!RK)L<Z!TFQXDG1Y3D,#E..SD>''O*YQN38-USR"[S)%> #O*_[3#0,C'^
MI_U*YPDV@O$7R8J('5F96)N,-I@KQ@NJT)4=6^N4*2&Q=0K=)$'<%@];<-3V
M].5M1.(_'+,K(%/AF%T!F0J'XD]5T40DKL.A^*PKFHB$ALVE''8]5EK22A?[
MDP>@!154<E=!1210P5GNXO*6VLR6B5UO@-[_A='"Q*>7'OD+N$?J9W_3^09A
M.;^IQ[KCVQ[Y^/JSGX!_:H%:4?]4'('+A+![VB#@*S5\Q9"W3.C:67[U.X7%
M5[\#\BMS^07X OEU +IN-L)F1_#E&ETW@*[L5\>'^\)*KX=[6!TS7QT!7R"_
M#ED=@RQ;V)B?7>N9+Z/%HSNWIFUZ^-Y\Q<:=[2'[A?GPVJZ+/??[1^#YL9 K
MKH-JRNO]QC'W=VXD49G0\D@;M $;D=")*$'*A(2IJ[>'@Q-.[LB< "Y63JG'
MD*=,*!D09&!V;AZ@,8/&,DW*A >>9VB95@"-Z5,;R%,FE#S\?G\WGB#=:V^,
MS%N3,[=-" N47CYZ?.^P_ QD_.C3)Y"+6;24R8_D?O^XIB-X<<A'=WA'C9'I
M'6([?M:$_P7GB98(F(#Y=#CY-J?V7>%6F8!>M+1!D$$G6T4:TO$<GHX'#((\
MNIL \<(B'MQFR65)"PSI!S3&A;26\@SS9<X KO?!]8/#RCY,L(?;+P1S,P 0
M+AC"U_.H3%B'ZFVYKMXF&IS:.M_=IJ:OCLU71 FTC_5_?&[CZP^/OC9O)PUR
MG"IX'<./Z,7F<Q=1#I=I9@TH^KU;AU!&X*'I=8?3_!7N#.T#T[-P=WAG&^:K
M:?B"A\BLZ^U< ]T\X#(Q?]\4Q("6W=&2E+);\M3)_0G6F1IU9Q?=/;4RTD*S
M>:D\+Y1P39OCK!#OKAQ/I6CO<M%V*.&Z?I^W<ZH2KJ*A DJX+N_XBE+"532D
M0/F,TK :JO5"M=XT>B),E(UH$PZJ]4*U7IAD*4\RJ-8+U7IAKN5&@RS:_ %
MYQG0Z>]H%P[P2>S_)CRKA-IRASD%%;!%R&D)<ZS <PP*@YRV,(AH_(=R Z<H
M-R :UZ'<0);E!D1# Q0'*B!3H3A0$9F*78^8NH<-OG"U;>,1DZ%#QHAJO/S2
M3]M</(*4\XJC>XVX3%"  SVY/M C&ISR>:!&C",DHO$2RK$4@+=MMVLKC:=*
MP%\H";99Z(M>$LRDO4;T]@ DC?/*#%#37]('"2!$V.)>:<*C#D<+3W6T<,Y&
M=D2G'ED*CF*C4IO.\(&C:K/9#@'7J:[ZM<@LW++JJUKDWL0TN@BK(<VYR/F:
M]M014T<+I#G/*LVY:$B -.<B9C44#260YCS;-.>BX0'2G(N8YEPTE$ *J&.@
ME\-8N<*F@,IN9C6>Z$0*_?>SSP?%9#W]M U,W@B59_/S2\7PYG LK PO >P+
M&RK6.%=;NVXX1.]- XS@4\ZI3UED4$'P0NZ#%S*!4[C?!;(IY[)I>;]K#H\D
MMD/5.DB9G$J9%6#4D]E!:SQIVGP9"C\?IFB7'%4I*,V%1O3JNJEINZ^;\WN/
M5</B\%]R* .<CE/# $:YA='R.CL'QG'K;&LA(%6K $!R"I!E.=/:*P96JR2S
M;,7#"=2VO&$P2^TRQ_CGZRR(42$@G,0Z&P7&L1&A2F4J&&>?8>.H[!M'M7.E
MLJN4BMY[M)2:Q04TG_APNQ,>P6L;=WQ[F<U("]E14++OK.Z@L,B:!0\N=C0H
M#;%MC"G*D>;B!O3Q#E,X7IS1\>+EQ2&AXP)+3(638P4Z.98L2!I/:B6A4JA"
M<S_5\J7'LI4=%6J<J\DHADML33+^&S B;(G;$\:QGP:W29]W NP*B]T3G]LZ
M#7Z/KRP^/W] ==+E(NW%BL+/,WHWLJFLV%U?<1V *PIPU_,H)ZA5J7G;",N3
MSC\_M0DUSC[L[Z;C.I;/E:%=(-OWGUW\I\]<>M0 ]!:\IXL_Y<+7L069:XF4
MA&]T+;G6W)&^9Y3B3E7.M<8NGM'E>X_?OYGGWX"LJZ?.NII20HYEONJZ/_:I
MZ84-?C:0C9W@$:/0*PZJ2I:,Q[L2))_\AISIZ>=,/PTG(?MY6CN3:?*O!?P[
M,?]2V9L"C2ASC2@UOH)&)*1&E!:_02,ZM4:4+"?K4 _FA"LJV\A/1:.%RBZ9
MKJBI\A565.%6U#3Y#2OJ*5?4Y#D)%=9.O:*F%3\)*VJV*VIJ?(455<@5-2U^
MPXIZZA4U44Y&,D_",87LCBDD>_9D,9WH5/H,"++=()*U;?S;=SW6VW)-U]VH
MD2-.QSN'@=.9<SIQ9V(T_3R8/J<P?=*3R6#Z9&GZG&*M!=-''-,G-7Z#Z7-B
MTR<E3C9A13W%BIKT"?L(_V!%S7!%39.OL***MZ*FR&]844^ZHA[)2=\V S8R
M+]G3S_Y-A MCC%R?X"O3=:J:VOA*?YVV,OUIUBQK)[Y-=X0(=F.:#4?.?SZ@
MW0F];VVK[,<#VOP71B2F3=\C7]E/![1(:?9$6?#49\.,-,WS,<U/V;"''OPQ
M)LASR,$,6&V!7;W!MC,V[=B6=^;!8B-?E@:QE0S] -\QM V2!@4_;Z&O^?Z5
M1([Q2T/BC'MXZ/YV=HMT[TFM56J->DT]DSPGO/SP5&MHFGKV9=>'M6,>KASQ
M<'WU86WWAUM'/-Q8)1A_^ M_VG5\HF,W^#K"R*!2Z]L7ROBK;^R/Q/Y*KO=A
M49D\I*+EW#7_%W^5U,J%UIR\7TIC1%Y,^]QS)E\E9>+-+CP[GN>,Z8T7]08>
M7TH6%9KG(\R.M].+&KWSDC?W%EYZ=BSC\NPJ^CH+>QXFY^X$Z532LN;I^\(7
MO5]>&J8[L= 'E8BL;?8LDD8$#W\[^X6JRF=7 U:F27*&TC63B%22?_N"ID/[
MLC(V)C//D66^V%\EEOT&$]KBPAUOIN&-ODK-BYIITWY$[K?P<#YP$HP'^9XS
MN\9NF%YR7C$96L[;5VED&G3I6G[-(J$B%%U+8G[MV2&4=>&U<]VQ'/)5(B_/
MGQ198O]]7KXE'([*B+KX"^_(5\EU+).S9)58"WVL[-)'+>4^'@&;O_ZBUI7+
M?8 A<>0.T=BT/KY*_S&@VH0K/> WJ>>,D?T?X>_A1&FRD2] W6:;5]8BS:IK
M^+HXM&@S?,*LSH'EN_?IY;Z4^_EP-^C<2/U!>]#I2U$*9D;'=?-#:#KV.]<_
M>W>#.TK$]L.-U/GOZ[^U'W[O2-?='S_N^OV[[D/:Q-5R05SM$.+^$]&ET7[Q
M'%N6;BZN+R1-J55;VPBZ\MH#Z7!,S_<73$M+2=!%WC>^^ 12.!2JFOKKXBHV
MQ<V"<*\?)[=7'DY9;F<E=A8P<LS4N.WV?BQJ'2/3PYPHF+WZC:#)_DABBJ+M
MV-Q\,'7)1LS"-K#Y]<;1>59 %G1Q)H6F8X_I4+/2IRS)Q'P'^^Q*5<[_SI7%
M>8.+Y(?95-S9)"@C_^__^>9Q;5_'EC5!!LLX\]N9<L:_APWS[V$? BKR%TBZ
M3PCE%>?#C)VJHOQZP H:<H>V9:&)2R]//\U^6ACE6=!S,NW6!+W@\V>"T1_G
MINU2RYO:#*\.9RV_T5@R1:JTCSP_IXZL*>XHX2XO(T#DMLD.$N#O/B*4#=9'
M#T\<XNTF#"0>A^7]=F:^,X'F6!C9'O$Q8U*K4:U?K@H*SU@:RXX#6#M9 ^/K
M=,K.XHP.GQ1: _K[SW9OT.G=_TOJ=1Z[O8'T^+/7_]E^&$B#KD1USP%3,-6*
MU.U):NV3\5GJWDJ#OW6DB%HZ4TG;UP/VL]JJ5&-5*,Y?^I<[D?B<3'8Y5DZ[
M'!_*)^40/MTZ1/)&6/IS.A6EP+<K8=O AK1U"C_RNSM!UIX#)K#!/.#TH9&!
M/CXPHE*1FB9XX@4^\PI=F[9VX=9TZ51FKM1;>L7=4:5@?U<EQ>+WM"V@(@.+
M3NQ\FCNPKA^]KO/ 2K[E?.S"/D26.UW9J["RB["R#WKMA_X=7[]A:=_7T@Y7
M6V\V0:;++=M%61V9@76'\*V6KY+/"JOP=@Z4<JM_YWLNQ7^K6+T)\4T-^G)0
M'W@^XWE1M$D6(6BZ+*!%NC6IND079::RG\Z/V.'1+.S=P:MW5/P513E7J_5:
M'1R*)74H'CG1M&HNS+:@FPG/MAY^,5VFO7@L[_J.,XZJB?=WOW<>I.MN[W%Y
MUG5[[<$)-AMW$XY9;S8>9&E_ZKPCW9,80UCDR9Q%$G*E_@3K+$[1D$Q;,CU7
MNAYQ1\_GG%KG(.U*NGTR9^5[&-24O..EF8#?)=)<Y.=E;TMMI6=__=-WO,NE
M[@47>3S4BJ=C.L@8OTW R81>4&T>TM7 9E^ES+2-I:=CQ.#.#JQM+I^9:%@G
MPV=+P=Z+Y7Z+PN:EE07IDTEH@/#(\&O'MSWR<>T8!WC6SUVLL\S['IX0YY6]
MC+G6;["%WA +8X[3?:=_MWK58@&V.K?F$W]O/YTP3#NQ.3- [W?AV0*=(V$_
MVZ9ZKC6T5J6YQKA99?,Q\[29SC1-4N\[+H O2^?L04%]G[C<D!PB\4- TG_Z
MQ'0-4^>>1F>8KHY].*W5/-)Z05YSDI,79)O_R[]_7NO,%D6NBL'Y?,ZRNXO>
M1?]"ZHPGEO/!#F+!M$IN6BVL?M*#<[%^+FW8& *K9T^O0T9F3YQP2\#8V:_9
M51-G_?,B&C8"><HRW<\^R'VV12%O&P9AE=V"?^[I,^J.RGA5E?KX@\JPOD<P
M]F3INV6\7$BJ+/5]:DBPB;I=2Q>$M5DO)6FR]II^[)*!\V;OR-A_(LL;H?$R
M\V3I&^V9/1T=,\#/S??SX,3=U^ ?M5:I*PVM<7;UH_WM"[L]EN=9:(IABT(:
MX3OQ\=%Q/63]CSG9W6%RI6C56F6[,T1 *SECEGP*B<YV'!Z):>OF!%E2YQWK
MOF>^8JD[I"H<=C^#8VD= 2E0)8;4&!(5)^ I<??9I[6R@(GQ-IUA>\S^1E-=
MGON?0V"M>\N]0['U.'+L_8(.M)IRKJCJRNM2C@G)Q?G5@\S$^2[G7W]I:FKC
MTI4&V,(3QIDP%$66[FS=\IF))3%@\-D&VYXEV?;,L:!,72_NTU6:F)Y)VR5\
M'K&BZ=+$)Z[/P@8H8.@=S/T2D%K5/CU_9@L]"UUMZY04^9Q$(CI?3K?E7*D>
MZ'M)P>%2T83T ^W3K>Q,@NE X_0IT5W]"XL"7RB")6%I59G.9BF8SN?/EJ/_
MD3]?]L#T@FQ &.DC2;>0ZPIF[0.(Q <105R%[7^,:6<^+9O4 "& T#8(34-#
MN1C"[_H(V2_T@LU81Z_,=< M.VUB[7J(ZI0,M>L/57OF"\".+H(@X[+$4RZO
MNI8GB$BOR/*Q]!?E0E'9L3&)9U@$!]N^_ D%:B!/=PUA_[WS #%S2<V,3BB"
M=C]#L!+9R*38-*AQ0,W2!^0:Z$_I=\MY1A8U7RUJP$H_$/D#>[NZ]]?'$>PN
MY0[U#:1I[=_9!HNFP-+SAZ2/L/X'Z],?5/9C'B/&C'HR/S/P20U=H"/D2D/3
MPH:$+(O>P0YR,W_!G[[)O 6>(SWC\ ;:\*+#H,+BH=2:],D(&PN=!Q''PQ0#
MS*' UB9^!-B@OU)5A]TZ(5C'7/%1-8EGB'"E3[15"@3)]>FJY8X<=I!A>H#6
M&R%O>2QO:+'#K+?!P^%P/LL2L@WIDQ89\S/%%+WI^=\,0?0A?C]]DG4E;(R=
M<7=Y3WA/D>M)+44RT(=[L?;PW^8MK.O F1 <EV?"R4/>SJDL_L72["YB?+$#
M/"W.NIX]."LW5R^WG()+?$+LAU'&)LJAL4DG@B'QN4X<FXE&ZT/"5$Q^2'=,
M%"*=[T7=( \%9Q27T#MO(^K[ZOGTSJI2"P_3^$&NV^0/-O;/!R%]/S':-RZU
MBG81OM<;F2XE!)KPHSHI3XN ##.@8_?SH3".4)T1/41U=C 6%+^4MTBR:#M8
M0KI.\4M8WGY.>\(D4NS5Y %("7T>>5-(K-G[7*HJT(^AK&20TYWQ!-D?,I/N
MM)=4#C)2O$@OQ'GS1M.?+ZB8QWS(!AZ:-D]SP/>)V4Z-IERN&SC_6;V<WK;U
MAK7]F]['1'MX[YJN3N\T[6#6)TYB:@.<:R%APS4PNO!=? 7O>4Y"%]7&KX>Z
MI#<]5DNG6;;)ET:S\U8S] C,.[H]-0"YI@+DQ2$?A]H9O"4N?_2P)69RW,?+
ML ,2%,T&LZ_?+9+O<-^7[/^J]GRDP</A<%,?7O5R,]Q"0'$)N-AN="=[$=-4
M/+#(N]_.M+-L;A9A[CPL+O[2J1F:+E[[@6X0/#A3$(*OX=J?[EBWB";>O^^^
M2U=;=T<S[]#T:#!SDEYUT@7."69')]2&@R<#E5B<N3'MW>^\7]=!CTXQ1PKK
M !QNL-9D:OS$VJ[F,,[MPITM=+FP'>XK\=W TJ.,"1+&QF2VH\8B>Y?UP5[^
M9M)7T]=*-AVAPXRW5]/ERX^-;-U$%E.JV+EW=C.K.F8@8K@2.\-N&AN#E"J?
MT.=8&VNM7T!D[X [HE;5E$?2)TIY;DP'>5RRL54_?UWG>_D7=F.(O)NG9MM"
MR>B0J R(2Q!^(AR<=-:S71$[R,E&N1E48Y,<W^.3BLTN9WF"SR)I]6 KTF5;
MD1(_A/G*\S$''--DB1&:NQ%#[MURIQ^]<\6O/2\CRXO5N=UY!Y;8R2L^4I9J
M(1M9>3;^RT+!/P/K)M6=W-_.[AYNJ:I UQ?,O0Y1KM-A&XX7WGIV5=/DNMJ2
MM<8L_'K:WZN+W=*]K3!Y?S?,03S<$@DL7MFNA,-ZUXVUB.6_UD8R+P@75M9N
MF:?L6D2M?<9T+C"UUGI#'RY7*8,V1S.=><'?-B<J[72$0FJM(DO3/Y\OS[[L
M5YAO6H0OOC9?.0OQ31ME)2Q9-T\;K)[+['8KC(3@\SRZS]-Q<S=;R32[Y7/V
ML=XA8.:8O:C-IOQN:=GV#NN$5^[SRM47QWBTUG4BK7-6(@:'/;9_[QP8.9<L
M//;PB\Y868EU3NYWY&366/6HQD[A"8T9=UP,8EQDMVFS/#Y?I7.NL>Z])NUD
MQRSH5^I*P>?U@=FIYIR8ZZ'OK6JM4:\\J0SUO4$ OCOI7+J]>V@_7-^U[R5J
MQ'9[/Z89D)<UU,2#2O<6CUF?%SNRK>/V/@Z<U_$[&(45$B 8=O3">W@<NJHO
MLC^\ ^S9+K>ULZO;V;8$SZP9!/Y^,IDJ98[#'0Y7\FWD&Z:'C<\@PT&&%TN&
MGY;E(+\2E%\5=JC,YJ8@#_'YCBPJS+#4'V%,Q1CB0;FS8IL!Z5G%3;Z[PX)G
M;[ >_4EE/ZDM$65<[ ;HZ8^Z<O<O;;ARTJZ#A 0)"1+R$ E979*0$26/[SB,
M)P2/,$7$*V;)I)PQEC[=.Z[[>7;X:T";Q%Q8/M"W2#^"$SD='@NS2;2"(-U)
MD%9!D((@!4$JO""M;12D//YGY%@&)FX89"1U_O1-[P/DZ&GD: WD*,A1D*/"
MR]'Z9H44N2/IUG+>YLD'0%JF("T;("U!6H*T%%Y:-M@Q1H^^R'.DG],]&&E!
M@,9MX( $W"H!FR !RR,!0<S$;M-KL$TO'GMB5H'FV=4/9-,)P(3[[ S3C>GJ
MONNR0TE,\VW;R/IP3:Y&S]<$NE08P6%%=D\/N[X5:-K="0X*.\)BL7VQT&"U
M@-6BG.)HOEI48+40CSTQJT7K[.KO[ "Y2<T!MJW'!#^]8$V_LW7#<ER?G99M
M/SO^-(NHU#/=/V QV+YCI\!B (M!*:7-?#&HPF(@'GOB3F;PO.NV1^ADY"O!
M(W%T;##A#Z)^NZA7117U<& +#FP=(Q863VRQ(UO=P=\Z/3BN!:'^>1<1(!;@
MN%8!V!,GM;6SJWO\@JQ B^-9\D&-VT&-TT15XT#(@Y _E9!O@Y07CS]Q4KYR
M=L5<L=(MTCV'@( ' 0\"'@0(1'/DD3UQ\KUZ=O73CI2E[R,+\YB,\,1(I(8<
M\]C^='EVP%#EA^4 E@-8#D#>0+A&'MD3MQS4SJYN\!#QP+R?$U8@&=NF0R++
M (A\$/D@\D&F0%!&#MD3)_+K9U<_V+'&/AIBJO!'(O) U(.H!U$/LF2;J*^!
MJ!>//7&BOG%VU>4UL.[LH("/Z=@@Y$'(@Y '*;)-R-=!R(O'GC@AWSR[ZKR/
MS&<3CM[O(MN%31X*4=4057V,'&B=7?4IM9#'#]>!*-@N"K)(?_EM;17D2$&K
MHVJJ-0\!U);RD%LKZ&T7! >.*<U9I"V5)\U;C<A3UU4\E"_\PH&E$V-9L[DL
M85[+90I0-'->4RD39B\S5)PZF>R\DG0G\?PGZN7:$E-SCF[&:/UH*5]/2,JS
MQ6^?PIF"ELG<KF8NX'ON_9CU.J:6)5,[HXH#GU:9E_B[&W1^Q!V=V=&>CAG0
M6KD3R)'3B8!=56MQY$)L!:,X.;!6!5S Y=P$.DW-XH42OKD1QKW.X_W=[YT'
MZ;K;>^SV=A*^4 -Z+3FONP_][OW=37O0N9&^M^_IRM:1^G_K= ;]@E.5?TY0
M;@?MF1ZEB+YZ^Z=9$DU90F/'9Z+"M"5OY/@NL@U7EO"[CB>>Y(X0P9*!//0Y
MA@%0E#MS;2/2WH:BW$UMN6N;R^?&+.#;"VT?^8+\/@VDB3Y]C*/V=#74$W'O
M'?<BJ"2^XV*YFNC^VS/Y<B6Q;/<I5A@7 "( CJW@6"E=.,4&*X"0&392W*V2
MGI'^QPNA2IL19:VF5&5)JS3IGUKM\T[A!E)$.TAA3^MPV_O@C2YQ+)FVZV+F
M7%UC?N^_^;5IZ97F&DA9,PJE3E 1NIQM<J83!4&E+)7RN]-^'5B=$N*BY2M(
M%1'; JER>JF2&XUH?]E3$47VL()D[!2^SC[@/WWS%5G!]K'X4NCLZB^[WQP7
MGO/-?/]J._8M03JO(6&C,6W =\]?$)I\9;1IVP;[IS,G3-N[1H1\4.K^ UD^
M/J/VF\V:[K&]^,>VV[65UE-%>6)&[)GDVV;PRT_ZX>EG_^9,,K!N4DZ[OYV=
ML[T8VE/, ]."\/G?SLQW[ZOMCPW'"^\\NZK5*G)%T;Y]6>SO/K/Y1(%1IY&9
M@C)>U9XJZA.S4!-CO-:4*ZV,&0]ZHYBRNX==CY@Z*Y+&I'<>)+9H\9D\V$:[
M%'LPHNBA^[:XO^"=(YK)WI-(V):LJ+7"RE<A-.B-D,U('N_7I[V=A+H>[+T3
MK&.J/SQ;6)9L[+'X3&19SANR=<Q38OUE\X1H3V^^=<B-XS][0]^:-MZ;M1TZ
M$$ZBBM8U=66V< ,BY9&DH5NMSGL)>1O++Z]L2O#]")GRV9U@G94?LCYRL0X+
M(.Q7N?^ O5-"N5:3FQ4%C*K\8B)YH5"MR$J]65A] .RM8^PMYP-9L[25#L]Z
M,%_@<^$Q$V&.\W01\PGN_DX<USVEW&]EK.^#S#\&#\G+?+5:7($OA %8[&7A
MI_UL6A8V<K<6@"\.Q/)ZL3R%=40RGU01K]4+*Y1!W!Z3/LA^I0-W"-7#N4\M
M%Z)6@/D\I=L'M:A/HF8WFG*MLNHL!)DN+ 92\+%6Y6:EN-O7H%VG+NX?"9X@
MTY#P^P3;[H+O15^(FX1U8#<9$!*T$]"S;1O<_@["VD_IA6G*K08XW_./C!06
M#;FE-L1<,Z8Y]58/Y"8&GV %$%2 +2U-.RTKX;FS(!G$Y#TX<K9T:FW[0I-$
MMK'2#C.O4K%H?"C),$51SW.I>-<$4;P'CH<LT+$/"V,XN39=;]7EAI;Q/I9
M*T<>4)"\YEROJG(S:Q2 OR7/AU$?B3.A]/J0)7J="7[;X,?")BSO'#C<]S*G
M TH^,CI2:[HSI>*I'/"UFERI0:Q+CC&1PK9J4ZYFC0G0^,44_7>VA^P7DV73
M"]1]$/=[[:U-J1?H?71&=]YURV<IAWYW'./-M*R3B'U-I7*_"7*_ .!(7OYK
MJB;7:K C"\O$P<O$%*^P,.PV]T\J_*M-3598 2H0_GD 0 H*?IUJ^&K&   -
M7TS1?8.'F!!L2!YZ!Y?^7I-X2KH[6W?&>(#>9XK<:91Z6<TZ#0Q(]<,!D8(B
M+[>TC,.G0(W/\UK0G6""/'HK?1*Y6.*H9RDI?!?#VK"7*)B1\IY1LL>>Z0Y_
MNH&M?YKEH2I3X0+K0XY!D<(249,;BJ"!E& )9"S]>00]B/F]#ZJ'6IYCZR>,
M[JFJH/OG$0DIR/2*H-$]$!E?K!C>D@PSKU*P:'PHR3!%T9T+[%\1*WX^/QIV
MRCG5 VWI)-JR*E<;=;FB9IQ 1*C5(AO>II"K2ZXJBJR*NL$)6O!QZW6%KM>&
MX[,01#$6[+*,,[^2K6",*,LX1=&$!=!Q^86RUM.\-]&S:9FSM+I]S]'_&-%^
M8>+RC("-2XF=DO 6\JJ+K4IOUR6*UA94QUO3%MCP>=XEFU;FM.9""LIS"MD6
M"*#3"Z!<BA91\MK-2@1-T =+KIL'L9*V&RDDR6- D5.FSU"K<K4)IR9$8W0*
M_D-5KL;4?1+">0@Z81X$]W+<[%0WA+I?!P5&3NW_CU.*>RKMZY![-->@2'YI
MJ,BU&D3+@LR/5]:)CXVH'P"D_<ZZ'B-=Q,U[2D%?8:>AX5Q$7@&1@I"OR)6L
MBU) \$ Y@OU*,LR\"L.B\:$DPQ1%H2ZPJT6L$%I]=1,.E._==*V,M.Z:(K>:
M5="Z\X:$5-*-5D2-U2VK4T68X K'YO1B,8DNMDV'T(YX4-5QKWD=(>*]8[\,
M,!D_,"*&6VLG2CY!Y7T53BCG&Q=IG%76Y$:]N"[U EL HJP1"PGKP  X.$D9
M2T\6UO.+:((GSF*AM>1J!?)2%P0?*:P7+:I&9&PV@K$@YD*P-NI&EBRJWYS3
MQL:P*!P5:W'JU: N5QI0L"SOP$AA&:C+K1:$:,)B<61RNXBY (O$82G.LK,5
M*MFGKH3%X7! I)'ONJ)EG- %XG;*$6%0DF'F51@6C0\E&:8H^G<N-6NQ(G+
M$7],_,5I].>:*E>KD $O/QA((=:]JLB5:@:>E&U;T^.QZ;&BQV[;-JYI8U3T
M8%L_B"SOKOG5-BTJEXF/F88<.U;0W,NA8Y1DF'D5PD7C0TF&*8KF#I[S$\1D
MSM9FGHU/CZ[.TB<60D9;_EP,K;]H;>U,T"3ULRVFRV[Z67%X (FX\B;RXA*.
M8IYP%%+]"=D6I/J#7*,%E$./9!KK[#*))$M_V;Q,S^[G NP1D2[I>\C#QC^0
MY>-'3/HC1/8.]'^:8/(4/CEW.=T]W,Y\3LI&GU-*?=ZH91S;9^4BMG3JT@4Z
M.8CTROHI2_N,DG?,;?O>R"$4'L9>'''YP^FS8H=.KF?!,9VLR8JBL/_OP(#@
M/1*:]?(01MRYKI\B$\Y=K+,QOE%[WL7V(5SH^I[K4>.+2HW4V)!Z-X6AYEI^
MIT1(V]F.Y-VQ;O+>2PZ1G#FY<Z&6GFCW*.XU^^_,+ *'+T;)F[K<N- NQ:;G
MB33M J+CR(VJK-$![@DQS0+FC:.(W,TF"&[.D4%P6(>%L@8NMRBAD2$*:@KL
MU\-T[("F<HPAL#</3J%C'\F$E!77%4-,D^M*76[LQ0!/ZN.)A\?/F 1K2461
M)=8SOGF4*$^$F!@I&X\Q/%$:35FKQ1V36\^3&ZQ'6:(REJBMJ2W!.),W8T*
MX*T(%@ZT#PY)I)7UD0>1;(9\@"#Y,+Z:)FB^6MA7.-" :!N&R=B(K(5^QG)J
M7WMA@DR##C84Z#J:F!ZR0+QOS4H]8\DC)>"=?1T0+C+A3U2Z7&DVY%8+Q'[N
MP9%&[7.EWI2KHJ8O!T]1YD4J_+%O,0>*Y/ 3\+HSGA \PI3&KUBR'!>.Z\QF
M_*>M50JFQ.0'GZ^CI+RS*67Q/:7G _:ZPP%Z3VYQ<&DGZ;6-@J E-[3$DZJ>
M77TN]1*0.B .7!!V 81:DQ4M\70)2X@ ,R#/J\,QQP1ZV$/TDQ&N&Q@1FSX'
MB\F.ZN.4?)V0;A%1<H.'IFZ>J.A=758:4 LI]\A(P<,D-ZN")FF'$YK%.DM6
MDF'F52@6C0\E&2;X;PJ36\5=>QP)U.W=E*KH@:X.I]R)7/>J5I6;#:@KG3LP
MI.*JK[7D1CWC_,:@59=C_2_),/,J"(O&AY(,4Q2MNL#><;%T[TA>0QXFF6]=
M_.SJ+R?*9M>VC<R4[FJC+E=4B)<1E^MI:-=519%540N+@G9]G!Y0H7J X?BL
M+J@8BD!9QIE?F5<P1I1EG >(6_J7%3"-45Y#6NE4@\5D"7K;M>\H,55M#35/
MK96.L(1T%L6'[ ]6^XS71Y80H9=MR:3C?"%4;9T@XDG.4/)&V,5L_>5&%(\#
M')HVLG63^Y7I!9[4[4):9,ORB((>-W=5Z&-H$FDA"=RDQ^@]QI0FGRM+'%G\
M9\V,YR;:<M_9M8@=^8RI%L7L2.L-?;A<8PC:',TTEJG<591?+Z6I"*BP#D=,
M3;56D:7I'VIJ?MG*E251-55;+FHFY4GT?F8'SL9!@M<CWW.6#$5^*<YDW02&
M77C%+[PMBKY=,1++KHVS2JU<:$U&W 5.7M0;,<P,+U\N]/"9*MM'BN9O2!H1
MIH/_0K5W*F28.&7B@V5Z9/+AVQ=TM3(!LV6X:=!WOK>JM4:]\E0]$P8 RTP.
MF^%,VAB!E[I(Z74>[^]^[SQ(U]W>8[?7'MQU'Q:DS"'"M;SDO.X^]+OW=S?M
M0>=&Z@_H/S\Z#X.^U+VE!/[QV.O\K?/0O_M'1[I[H-\[TJ?[;K__N> $YY_G
M[SPF(C72'CM98^JKMW_Z:2/?H#:[(4MH[/@L1;%I4Z7'\5UD&ZXLX7<=3SQI
M@DEP&%JB.A"*8\(6&:T=K?H$322@^S!MF<MG'5O6!!GLQ#8_-<Z^APWS[PL*
M G]!*%0#_3^X$M9KXPO[W.+B*__>L OM"MJ6A28NO3S]-/MI8=QGZQTE2HRC
M).Q;8YV;8VXM2FMMI<ACNWR&IN>?C]G,:!X5(31U'(18GT^WB]I,V.WB3SC
M5Y'4*U=?3*<&G0SV;V?ULVV=".=.\#6ZVS,WUA=OF3(^,B?#7T+QS(W!!4_O
M3&-;)_^3$^D;%Y0!54-Q0*T?].:1&WSNV,;TJ$'X]YE\B9'6I^WL:J*3Q17E
MY##+^)6 Z5B8/-!_ -)'X2L?BT\B[O'C7K1A4FHP*2-WLQWG%*$M !0 !#N
M0&T!"$H/ I $ ()L)4$N(@6%B X4Y>Q\#[]BV\?)U /:1Y\[MMTRM 54 ZH!
MU7)742HWBU!%D$7HD3B&KWO)9%U);A%*.=XX7'IOB3-F\0GLIG^:WNC:=VE[
MF-S9NN4SC:SMNIC^9ZRF7E(:3XK*@\X'SCP _2DDYP_N '.)%W[ODCXFKZ:.
MV^^FFU2\<JLJ*UHK;R'J2;28&W2HK3DZU-9)T5%OR545T"$D.M3,98=6:\B9
M9X &>&R$1X;"0U,4N1%;L$2 @S#@T1!5F>PY'\CR/H)B$#Q7+ EF@V#:I0@I
M)%)304,FG$1.9)TT6E3[.T_P65IF3@F?_-4A$;-%@9384\*G!=(G]_#)4/ID
MG5,KI8/>I_%60[*:4@PS!]*K:"0OR3 !68 L0%9!2%Z288KBOLR-8U*L1&S@
MC#RU,S+)K>YZ[E(@B]FB.+[&)+>ZJS5 1V[1$>M*3'*KNZYJ (^\PR,=X<&W
MNK,N8 6NP!Q;!2499@ZD4]%(7I)A K( 68"L@I"\),,4Q158L$A&4<YF7CNN
M%U1K<":8((^ER<7O$VQ3(P4.;(K8%E -J 94@P.;18^Q9RL3RZL\"2+C8%-K
MK>>14:H[_-UQ#%Y4)@@@=/N.99QT[ZK2DNL0Z)P;$*3C9:ZH<E6#+2KA09#J
M3I2J-.5JUEL-@(*=49".*&@VY59#T J^X) 05>WK81<CHH^X3\*@.I_E3%C=
M'=#[8G:< U+127XS)U0G\-Z<5/6KTD4? @]R!(-T)'Z-PJ !,,@!#-)5_RIR
M%8(8\X2#=,2!6I6U BN H-KMJ=KUL44_O<C2"[8QJ[S(5#QDC$W;=#VV]_0*
MWKW5^1Q2[?> 9G16MQ<HEH6ZI[5DI0;F?1X!D5)L:56NES-#7WX!D:H*V*S0
MI1],@3P"(J6C*PVYDO7F$ 2?YS@.K23#S($\*AK)2S),0!8@"Y!5$)*79)BB
MN/H*MM<K5K8*?4,(.O@#8Z,[6%Q':,6Y)_7\-2JRT@)'C]BL3\F"5^5J$YR^
M@K(^W<P22DW6E(QW\H#W6WB?TB9N0Y%KS8R#>\!SEV,EOB3#S('H*1K)2S),
M0!8@"Y!5$)*79)BB>.YRXY,3)2'$G:T[8RP-B3.>^N,<&_QPJU99=^JL#"AV
M[[BG=<5IBMRJ@S]&>.ZG8Y8W*/.KP'QAF9^J/ZZFR54%N"\\]U,Z8J_(:C/C
M/1APR.58-R_),',@?(I&\I(,$Y %R )D%83D)1FF* ZY@H72B>*VZ_(J]&;@
MO/LT#9_[#"E<16P+J 94 ZI!"M>B)WRXLU^QZ['T(^'*E+O5*'UOXIQ&@3OQ
M 7LGW4;*.K1/5"DG$N=3BNR4FRV(Z167^>GFZ)+K<(Y#?.:GM(,DUU5!<S&
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
M:W*MGKC64 RF)\KSQ*1Y.AP3Q@0$XVY/X^X!>Y+)EP[1K#C(UBV "@1<$,=
M 5[ C  NB./CHTOGO$K <B4S-:ADIK;FE<S45O;Y5=2&W%0:933F\XF8(O$=
M=G[R9ARPJO1\Z\<9LF+?+"K?978K0QI%X;/'($RIZ%(LB68^"##=N8W/:(B-
M&Y]0B@=%,(.]H>L9Y;I#-K5W7$&RW2G2Y(I:ES6M0-L$A8 4W]3/$%&'+DO)
M9_7+D3E73#B)LF^EMIIRHU(M#K[$ZSB8J")T'+A0/BF;J)"L%=<N!(MO3XNO
MAPT_@# S\3!?GYGI%RS0TI XXV7#3Y9L[#$+T4/OHAF!(((%$)C A;(9'6OB
M7<@+MK_.B^:Z V>-L3"30K<.6;(1NL-@Q?3,9PO?4$DDH%6R2^2,IBBRTDC<
MCR)$Z Q,>!"[P(52"]R<RDO8HLJ;P=)YQT0W7;Y%%>Q-.1,&#%="MB&]8M>C
MS<Q_9*AT1;-2Q'51!%M5_.]WY&*#205LNXBUD(?]JHJJREH+=JO$0A5W?&4-
MJD-=9K!C54A(";-M)2NU6G$@)E['P5P1H>/ A9(*VB3E)!QC C-P6Z3BQ"?L
M%X\^+'DC+"&=+MXN7^K9O=?2 .LCF]KC+R9V9>G.UB_ /-S//&S/29J+(,9&
MHR5K6H&*C!8"2WQAR09*AZY!!4J7 D 2Q0"L5>16I93I-L#V "X %PHJ7Q,5
MC\4U_&"7,!7S<(#>I3?3&[&$*WP_T(YN#5([PB.F[F&C]+N$VS(5<:.+*4BW
M#J%$_>><IO1"UELZ6TS"7<(,*K+22#P<&H*R"KZN9\_= ^9R)"ZHAWE2N8&3
MZ)06Q:+2DL]>"#.ZX#-:O(X#%THO4?,C$&%K3!S;I[-\B(M:/)MQS*)\[VQJ
M$_D,RW>LE@*UD'H4T'R]-AXQ8146*(=B<E9&%(#_P<1Y=$S;&XP(QGW\BNU;
M\Q7/'X]$%O>Q;3KDP?&P>^/CP1N]X2/X>^OX)*HS+/8N3E&8^ 1')T9M-B_.
MM8T30[FH-%:#;WZ57-ZY\,P;[R[EI<?V"^'H&RQ+ G2\C%S(GKO[NU1W.8N1
MPP-OFQPJ35EI%FBC5+R.EW'NB]=QX +(WH3--!%$)VQUY<W<>R2.CK'A!KDZ
MS#5QD3/+97:#[KC\PE^.GT61C>-I7.8U;?W$J6V:<CTVXZE89IH @G%C<"?M
M"_\I%Y&=5;E14>5:!6([Q8(2#QG) $D'UT$KD,%2<A@)8P=KBEROP\D^,,&
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
MH-E-8 \SQAU0F;Q+AN.S%(AB^ /*,LY<*"\%HWE9QIFC=;!@E"_+.$%Z ;8
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
M/2KORY5I6;Y)=GGQQ_RF]R$L!F.H3CZ#Z8A\E%TXR>Y^__FN8!SD\X(;'&!
M9MTDK&%]2I#_0)]QS?K'@Y;85413Q"2FCYV0B]0!KEE3+/!'L"@)4RI*+A9<
MMG=>O=,88.1XF$-NX2Z*D8%4_RJI[IPQ4,E5 F[SXT _D<GJXD^=QKK%ISPL
MDG9/L+1*< EZPE/$_=O3@4J)?11TB,9^*(5\+J[M;&]EQD,:KFYYZ,:3X_TG
MY0E];].MOJA=A_=%(=B5PLNQ02)B'(;JV/,[K!#T,.?HM5(.ES7 7*^Q[JC,
MR.YQ)+*\[$S(XJM$A2>R,O(VH4X-@NB)DWTVYTIE'M >\4=2AG/U?M0%,=4I
M9,,$]H:K/>*K1R94A'@RZ#^P[%!'$*R5>C0\!C0E61Y9@*3@4[\M=;&ID/6;
MS__DX%'_#D(I3AP8)3#6Q_ ]_(N??DTY+#KGY%M/ZNQ9M_I'ZEK3"A'#%=:H
M3L[U1H=M&]R+NPXV!ADYE@]2AJP^:93)B*P%LL=C(^!ZN<G#Z)&!((_B*'0>
M_3C-%>[UUW]_?'?6NLQUY\B9"*T5A:6&@0LR)H(]!5*)C<9!-&&HECG">OCT
M+9AV7H0?[N5&HEP$<.<S>S.)_?N4A!#JEI %(/FX&CQ(@C3\$P1U*$2,>C]>
M@>(>?A]%X.U'F;$HJ4!SA:O88Q0\XF\@SE(IZT(A4CE*$9)6.!,UOH;UQ] '
MCUG1 H;HD712*A"C$+E]/>WOY1)4R2R<9C9Y32[.<1B38<P8W13"+3B[9,BE
M/W6+L0]TJ*Q.$WVI=M,NK K,%Q0,!O!!4()\!1&:Z$0AUL@FIJ\M4F!6^-,P
MM"&/(B(EB-TG)X;%2^E%(0K5*,5W:]M3N>RYJX+ODT$3!W72DX6&/ZZ "ZLM
M/!G/HQ?#&/0X 4;6[O'!S+.E0S[?_M?62;H"Q6$(Z 9QL?1L,N])E-*),? B
MQSWY09"=HN"TT2/B7.@?Q60Y\V54QN'2O>2XZ5H9HP=)@24<354W9@^/UE!M
M>?_Q)RT^##L^PD6B]PN-5H%>6^%LJ6.4WW.5'\,C8/UXX38!EH+MQZW?QQYQ
M=$T5X=;]W#^$F^OC?M:<$0I.2!65[4>4^ N)&)6+XQ5RY=034$D$H,\P;,G
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
MX#A!QP"1LQ]PG-7:FG87G>%>C1':(+OT>VL_:$J[W# Z<+9J7)-UQ<KZ[N@
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
MX#.+ST<IA'UPDTGQ=Y_S5/B+4Y1@HW$039CL0(-CT_Q'N9PJ$J"-!;O&4S1
MN9^VSCEGF7\*/CJ7(LN-N.IN7CB(*,8*A,J&0<B>3[":L$!9E@]YJ>R'W,,D
M#O)5T'0\\(W8_Z?D7]W$/BJAY1P_]9OG@[**$@N$ PH,J;1@/\#3_H(=#X.
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
M3PT3&CC6:E]I$/-69&D#J&C8XQ  %0U[U),]C/0P[%%_Z;%_6ZI&238&CM7
ML9X<G-;U)/$?'>LEIKVS.)A8O[VW_LF<(!FZ3LQ>%4/(>\]TVPT,R9>?KTZF
MI,-0M/IL3$.QDR@K^BYD9P8;5#P0K12^K&-?=/>,IKM%U6Z4]II*^[,?!/XX
MBMFM_S!R:J:CC?P[/OE7CN!89,,=R,%+^[S;-^6W]>63<I#&G?-)^]+N]"\,
MH]2>4?8M4-I]N],]KX-AM5I=S]J616D<ZB0ZJ5\/@3V=1"1M3JP;U<=^?K7*
MSM,/[TH2^MSBL,=JV#YM*F8Y%K P; M,",Q^3+G(D,8,02]Z"GD"5O;(&J<Q
MY1C2%L8LW+]2H%4R$7FN$540W?M1$#U05K07IP^\8>&H1KCC?)';.S4BE6L8
ML\!)&)=)Q-;7F]]OYY7I=$LRM="FGUZT-_E-EXWS\0_:)Q?G;TH6J'3;K<M1
MXYB=P;5_JHR*Z:FZ49".0C+X&S1!^8U(P/88)G$"X8$"]PQ+P,81I_1%D8!)
MJ=)JC42^,"PUW-*PWCON4'\@)FYZ+/ ?J3IL:_,$_TO-E/*;<=U4\JG&@)'O
MLM*%YWYHH\"#P<. F4_H^S#!1_#E/,R1ULO=0.H67H"9K-EGGH['@<\\RH:7
M#^(N"YW8C^R,GQ1UD'7I[;)T+0%>!P)X#&LO,%$6!AN%L#="T1  K\<KLR1X
MO?8.J)/ 9DKRW3.5=<O9V,'$>FO,8E(=(9+C'MB6-A+LD.O2/:IGX8KD_"!
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
M?E]_P4I)L9)L6M'?6@_A:IO>V744$I%QF]RRT(]BZTN4E():6>5":ZLX8IO
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
MH0'X;I3_Y"MG''>0OE^(<VY[?$(Z:K)P1#["LS/RB;=^,MJM4[O=K,A*D+O
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
MNM'&&J0L5:!.0\1,XWS<<:(TK'=. HJCBER)'(CS@>'-/B4U8BZ*RJ5\=/R
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
M/#XZ.3TZ.2DN 7;?$WCH,.BN-;'PQJ^3U(DQ[NE D/LIN#*@>46B I\&.R3
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
M?I)DPN;_B:W7&G17_'#%4.%K_=ZX:UAI+!QX&A[K@F!B K]A .'14.#/\OG
M>*!%!SY,N6%UTHDHJ_CT>Z"@\543OVI>VH5=[CL>G%>#D C ET0NXP;3I'M1
M#%(@Q(GW$<V9A!O&'6$?HR&S@_[(BF(KPGQM_5A?> \(5>;$,3Y-[RACSFW\
MX!5D1YF9:=6Q2(9T)*(JEC2V 7^ANSWC/Y[ZT:! 8X9'- ]3@G'DAO5'WP\8
M!3H1\2/A@3.<<Y3"Y) 1"XJL*FZ[J!!XBG&0J->3I(>E3UC>P/%#A#@77IEC
M$GA[:N%(,$T$G2:>-]>GAP1R>,!)#>L^LB22N$GJXLA#$6/4F_ CL\")]>F"
MHYSE<@?1(L?::^=G%U[C,9*UMAI*FGOGK)M%9K/8D9C/?EQ&42^MY->I\EIG
M4[3]+-/2I",E>97I* :%++>N0)$']F+PY(P2NH#@,?MQR19E^&3E![5Q$<:E
M2_.T;5OJ/^!H_#P9:K'=:%T8/,93;9R=5\Q6?ORV8"Z27;?D?CI6/\9;K?]*
M(_?5;_<D/M 6PQLY$ &__NQ,MK)VR7JO,,SGPD*][<D+P7>CS\Z?4:P-S7<C
M#26L$&J).DL!?O\VB7Q5 -!K$!S;-F(5Q$(O!B5;L$]S%8P6K89$A??\A$;)
M ,ZF0C2=#I#J$P8Q8ZPF9<S3&OKT^="G%YM#/CW>&O+I08.J+I,U7B.?UH"5
M\\6=IB*?FH8>H5=N>;(["IZYM5?6/+TP"&O-TC4>["I?5 , SLGH+Q\%LF:%
MN5FA1H6MF>#%RX.:"79=$JRQ,/N%86?L2F'VU2CU'QWK-=YMB3@861^OK7\*
M)TC[KA.+-P<)JO'EY\ZR%2M;:Y114W1[*Z]IN<LC;J.J3UVW/;NFC\6S;B]8
MO,-;=]5?:WLM 7>K#7]M,1@6PV<_"/QA%(L[_V%PF-"\^RR"=Y.BZV["L;0@
M+G+]S@OD&DYV%WBQNOO%H?'BN@$[:U[<HH&Z9[RX;KDXH]3JI5=QW/=%+*PG
M_,_:(0YD%O<WG1>^"$=MP#.;Q;3'DYCV*!$N,NY3%'N)"%_]%D9C7%N9%]]U
M @<F3!F"46]B]87./L3"A[D3$($*GJA\+59SQ-'("729#-=85,RL875H:M.*
M/Z:LC(L?9H0L\_4);_5<B/*SV?K>;DH$@'WGPOE%YSCRXT_KXYC$8)GIU3A2
M7"U?G-I<677J6$G']%3MK)N(OS/8X>M'2L->*@-[T<S:F7FT7 ZPL.98,I-V
M[G"-G.5)18HH1FY,FTHFH>],;<EF;P:;9XU)U29SF$ 3:#FQ7H+K'S98+KSZ
MXOUU[/6<I<KK--%R<6.QO)E8A%0(ZI4-V[46A3_3O-VC'9:)!!LJ1N^X?V=^
MXJMRTI77;7Z)PJ// EX.;Y=<<Q<%&15%VM9-Z#9F,-E.U+AODGUN0^O632-M
M C=/V3@OUIQ24@F5?V.AKW67@E5@?<UBM^\DPNH\Q((JEMDLWL:NOD:3KW7\
M]LOG._JK^?:-#1/]["2)X_:S!-Z(Y=?Q,&+KU29C[P^,&3@#^%D01)A9W&JW
MW\JB\%C\18^+F$D1B <P)?&[K@A%SZ<JVN@IQ%HJ8&5XL8UUO$-%%/H EN_V
MT?X,$VGW)UKJ81> ($J JE%I#UK*07J-+\Y79AG'1ZVRBJ$/B'T-*ON)U1>.
M]W?FQ(I9K4[6S6+8[ (?V%2[!HL(LQ[L"O@A,>Y@S^F"34P%_?".!*P.^"77
MRY']BT7><<*,$XN ?HC\,>@&RGEPX;@ 'Z$NRQ*> >Y@_B9T=.%571\LVP<P
MP+TX>P#'0G(MN2S#./(RESHJ! &-&/#9PA>('T/\GV]B"-:-"/5#*S]R"?PJ
M$$>P"LE2<EI8QRYP&<F!,]Z](1UIIZ1[J;L3E,XKAD*<7#I@0P&KFP&910+,
M$GJR=8=C/#$0:3_RC-X#U!\"MA]["XCP 3P3X$!XS(^]HR%P_<C2+0"LGA\/
MJ"M#0GU&=%^-_!?29=:3H%?'V# #UR;@  SX,*@Y#^%XP Q!5+KR'1.62O3H
M8M<0-\B\_!QT0O!# XOK?5'J?0"K8_6\VSP^^A_)C[I5!/ LD%)@H4AES*=U
M3!$A&$O*9#GE_\/2!&1U:=;PDO]3/?R_LE!8*L955*./H+5 D% '&,>+AM07
M W<=#K@G&\U$1I,&.1ULF1(+VAW9>X2R#^G1O+@7]B:%74O4U*7>*#34 .7C
M>SY,0"12@5@>Z+*0]PT>_):!Q]X\.FZ]?@(%>I=W@>G V:<O3XY/609>JT8G
M^JMFJWO4(CI2LXXL2(O+]P20<H"],KCZ&/G&YS89CE4YSQ'W=\%@+G8-P!XL
MB0!6!\8TR)0HK$MN5B-)Y2TFH5;B+Q2B/SLJN?;*8?@:1T,ZCR7/H?/M7MS]
MYXOUSH\290K6IOT6O?G<C[!:YY4NQ \0)F0SA=8U[&7*9[L#%E1:Y4HHBW[\
M*V7ZLE*KY(1_ B]3]ZD;M-3@-9^X"Q'Z!*Z<4!0_."&LV#/4;^ \D36O'E.3
MD"_)78M[5+K820V\!/4RV_KTZ0K?\$4\.IZC.Q^!B]'U URP?+5M=8)A'Z7N
M:.YG\JFH1^5D6!BGT8.@R#719.+L3,5P)X) M@:2[A*,\QDL:4<$UD?G(10V
MUA<(T%6@&/H@J%T'N0$W+J&!]/T&F ./^M9&CFNCX9!D*,ZIVQ,Y0N-&$XEJ
MZ[7_!@T+-424I2#30YPW-2F#5QH-R8SC3WODP\.NB-% )X,<U #UO="4TN8Z
M3*1@\A@CO<:P,+8X>80%VR:=U"\JG"\R )PAV,8_R%@"4OUC^D7/._EJH$(7
M]!?^XBJBN#+[I??H*H*%#>JK?/'3//[>.I=A]_SO[QVP3Y)1:+*_>6>C7FC,
MGB_!B\%^\Y'25^J*IWR!\_O=>_/^YNA,7^"<3;V_:57@,E@#],31+4=VCWWR
MBGN+D?:K,^+N,5&'N4HM720?XRA)7B@YF^W)Y,2#2YW^@/%-F4""5Y\.ZB>X
M)B9F27]#X2.P36^PS9_7"3W\ P.X+W13SJ?OB?+?D=L'&!2B>%IQDQK6G6HW
M&6GQAMX "D7=O0V#&>1EX:?<-W'HRWY]I!?(X"XX?$^.3YZD=%IRY?=/<'6.
M[EPP9L L@ $C<-A2/P6*I=8-G,KH41K9'8H#6,W+\S.;_-H!>3XL-<U@%^@,
MF ^L0?;_0]=*N2>]*(M!5<EP#8['7EAMN&W6<)/JS1X/GOT!P@!;#<+&2GM(
M1LZZ< Y'";A<Z&N&T:.3DA\,'AU&)K!79I*Y+BI8LD:P$V$>3[+</BAG>(10
MAECZ]/Q -9F4 ZN@'OISKI0MTEE^ (/&(O/ B6F>7O2$C3^%,\"9 9_BJY'#
MO4Q(E>_'JFTB^LDVM6X:Y*<DB)ZL/@Q[E W)1Q_@;3]&08;:_1@W DA7=<F;
MU=$5S!N@QH[Z5V1D7'^^I_=0M+*'? \<#_(0)*"?]&%'M4#@*!'X^3[\ C<*
M_@>6:)!/49ZD=MZ#U <I^A#3GSU<SM"!*>7AR89> 06/]*L]DWH&Z0)@!C#B
M^OZ0%P?^.0ARLO'(VU;"!-BE:G)H%Q7WV38VV5:-GZ,L*05'J0VM -?_YVZ&
MD4:D!4PABO_"5<$R;H!&GB<WH-QPTR "R/&_L0%:!2TLT""!_[_X.M@8'4--
MX$,76]*"-@*9IWACP/8S2%*W'V+8=D1Q?D\$8"K&U/(6-*;GXVRI'2FY&>,<
MI6E#!P6$,ECZ_RMT7!5$8P(,2T3(]Z$6AUM(')P>UZV0!'/$=CMW5];%\6G#
M^GWN4"^S=PC>L71J#&]%15A!WF .BR<3[<K#8E-9$':I%(&R62_Z:CT'_HVQ
M8"%O-%#(8C%YWM 89I244_%8*II';GUQ:.->QS0BND)>BJ1YE':2+<$BG .&
MQJOR=\M0(;NS&2^WT*$7S-2!;-Y,]R\R*@Z"Z J]4; %\\]X5V30VX8%I:2^
M,+R9-T%&^8]73OF:R$ GZ6;:<B #_N3O9</%1%T B3!1FT;[/035X5*F%8:+
MB5=CGB+8:1EU;,10+$I:):?8/X:G$V$N:7+D;*VX#%N5)2O%@W@^-D3=KWB1
M?L7G<_<K-J:UHXV*-]C<=Z[FK'6SY'GIR8-BA^3TQ^7)Z?E9^_O%JV<?@F=G
M'.YTDM_-_?5GF=32L#YWOG0^7G^^_J*,[COK_<W=U>]W=S>W8%!]>0__W_GT
MG[N;.^OV@_7AYDOGR]5-YY-U=?OE_<V]^LVWZ[O?/]W33VZ_7G_KX!=WF[_J
MFV0X[_1VW(++\NC#B)MW*#;> 5MYU& G403"N/NV+3/:#RXP6ERY 6KXXU=Y
MRIB^@3&S;^@"1G[^),J?@%FJ/P+W07Y:*E2@BP2*JSP$41?LM<#O@;?H^H)*
M:-3]#[F-'MB"0334V49@C^$-.- I49ZHC,B X5@,AFC_524K%?Q1,#P17@7,
MP1ZFML&KU<]Z@?CAR[LH:6[+45$D%[UWE=>$J0N<V;0.#BOT#]\BBW78;8C@
M3.'=%:/GD)^HZ)!HA"M*['B(HR<CC0MX(HN-CNPD%)MO#92@ -8H:!_[#D@@
M5V3L<C!/Y%EGC"JCN$-GBY7RSOB^4R*$J)?!]^!0*5]&1B.0V]TH26U]Y6>C
M<Q6HVP+P&,BQ2C U!7;Y7>8'C 'C>?BI="T(#"G&&#4N5">VH5/4%\&0N!(3
M.E+P<I]T2"_1KC;8708I\3$C9\]K6'\(&1\<#!!DA=Q#/TR&/H>2O$<N0@.N
M+1X%<M<IKHWI3> SAAQED[RM*$!X-Y(PQ8P]3;W<7QM$8>0&44@YHJG?C3S<
M'B4R!IUN?L^*3CM=G" >4QREPD<2/8+GC_*'" S215#:BS/$8=3KZ*@2'A.%
MX_&]_0QH@K'; !S@IR@./#!OQ,L^>+#OLD((SD@T%)0.A!&04)1V6LET6T4Q
MZ7I1],&'QBB(CFEJWB1^1) A6%[?RH8R,HI[,AXHU;QE"KWBJ>.S01R"'(41
MP_:I-1(.9PW[H0=<&(_(KX]3/Q$P4S@=#LQ GF:*K73CR/%X%AAU3/R>CZPK
M8X>8F-:+ C]2H X]U&T)GSH,O,A</:D:]-U07VCI<]3SXP3A(0(*3K"RB>%=
M/ H&-K$NTQ A=/R4>*/;'>#5E'01+76(L\+;-)^%W\#YP1%/%8$APAN" </=
M*8;HX1=QE#WT>0_XG2X)3[Q,P!$IWP!.%\9[XY"0R HKRS4C\!:*YP<AD<)0
MH%(2BA&AG_>PK#=#;+?M1MBFK^J,;,-VQ E4'VTTG0I) Q@,)%@NJQ># NC[
M%"Y+L1L^?LU!Q2>$N LPPQ*D,8H1X-"5)Z**T,-;D3B15'I]5;H2^9#?>R%W
M?I5V50=8>H3YY\RT42@/I)IT;B"HDY)DPR'FE*H4*3@;7Z5F>=/8<[[>;,+A
MRIE@Y0.^)Y8%JA^I^NK"49QR3#=U6.]\3$9N'3=;N38SHNK!2!K >%[AK.X^
MR3U-<K>*Y)P%A_G7\CCBJA8]ZP5I)1R045I8R2L%S)0&DT": >9]8\&Y(\7,
M%H1A*Y!5"2HT?"DD+Y:C:-)/,@FTI,1-$&"NV7C5%@NZ#2O?UZL+MUAK&2']
M9&5.  ?[22HO:O@"5QGO/\-CLD['].^D7<_\ /9,XH)M-U,V[Z>!?A^11J)Z
M"2 !X7@J ^XA<@+MXB7:X4I(5" &*.B[!PK(F&BK/O.M8=B9MB@[F'@*G=AE
M,%W3%]:!F_]V!L.W[W70)56F/5L,IK.L_-Z&=5M\+95?\3CT?$+)"7G^+:4&
MT*LYL\3)X%"3?YO[OYQOA[=VS''LUDG7&:]H45"BN5.:4]\) A$^Z-N_"-@3
MG L:G:,/3%AU@SI!+"1XH6C])4:E-<,!0 YV,5F2K'1,@8-1[C#A ]YY]R0\
M&5#[*#"39J3<*IF0@9$)E2+<%>R#HY#OCC@U+?3DU6Q3>=M?B&B86L3SDY"F
MJ"'XDI9;=# G<#9CGH(<"N&QTP_N''DMP,D8SN/4#!4>09<N=> )3'!BIXMC
M75Y^-CTQH%@7PO(:H8J-N]$="E.F#L/:@N_O:B])X>X!+PJ9X(QW]N#^RT8F
M*'=D*HX+_.D@JO#*Q;(Z2GG.CSI-1<%,450*4\6\14:J$MZYT\'D"WK>!'V2
M,;]2Y;[CGNR^JAH&V<,13/4(/RXP#&P0;!H%<BF:-+9?&ZO;E"(#3A">6\PY
MD$D/LMPM=,COE[QFR@V;A3+\=F#YG@"VQ%.2<2)G'ITKBI(\0/)$C;BH?E8G
MHA)\-$6\=7Q-A@K5!'10=-4*<CXOA>X$/<RMH0G_PDD\1.+%^]H7TQTW[S:7
M)J#-S-RL=*PPP]3H0B1,%3";82_8W)[46K:I8>V*+#X5+U9XUD;9<WX]<$_5
MT?B6F++IX$<ZSH,)18D1V_(Y%'7[]?>[25D<5?B,U#"FM"MO\X<N&R?#'Y3+
M<7Y2A32]&@D1BR/X[5\*I0ROG[)!6+ =7Z@IV#%L@R(C:DZ3?$B[Z_1Z7)0
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
MG:'.>8..-Y)7%!B*#/PN]\VGM2)?$(<5C0#;RM (Z!4[67A^X9-"MN'O7*%
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
M+?<CEJ^P7E=:WV_($(Q%5Z??<Z^"L:1WLW^K7V)RV3RXJG\#K-BBZDA54Y*
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
MZ!%C&_J.C?^=\N(_F5!H24(O;)HTH@ 734RX"!(<A&T#(6W'A!;)QL-5U$?
M(M$\F*94AC,*T7/B^-AT8UGH3A,U[HA7Y2O;U4A-7@4:4F.^_9VP\6)1999:
M,&)FN:,WY.\AI 9N/V6!Y7 W**G3&1=Q@/Y0(0LDZA+S,($)\ZR:,5!!WJ_J
MLGL35&_3(HN3%C0S44[K7$&>@% '6@E9\." *J^7.,4BT[MWR,D8 D?-:N\%
M<(QCSQ+,\%4HIR*,Z&I#F2ZQ)34$A.X LNI-I]')22H=31"LL?96%RZZ7J.Y
M> >6%WK[G%\DS*L,J0S,RDT[-;] T #&Q# 6X+/IA0(C"%-C,&< 5\_&!#3
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
M*ZEK$Q,XB.='\#/SLF6.@&>9%O)TJI#UZ$03FFA#NTB'!,W!-3U>6(M636(
MIN0Z2;4M9EJ35]^H!4@@7)$+3?TP$E5CJ/(#P7KQ;BH90S@EX+3MJL@5T2#_
M3*K$8YF_, ,)QR/LHET;,<N, ;\>L4ZNZ[ 'PB>XD*"9)$ 3  S@ T2)23QP
M2#LAWWI$X/0-O!QPF)3>E87[$'%RHX!4 >QTL1#V!# 6EF[>\Z+! 7MPV&-(
M.[LPL"B@3:O+RE2<B05FA4D8_5?L</%\)BO^<#(I7;,HP,M?@$1H36 +L8Z1
M3S13,F.\/T.J29UC[]XGFDZ81R*M1?DBF!VORQC&\$>^R Q84L9+5?VM7-7?
MKJKZJZK^5JT(W&MK@\]H17LO,KR/-3NA%(Z@0,S!)/N.W'[)S295IO>#)]0L
MWO6#A!DUJ$CE%O<] ('<\^%X\5*JFFAZ]U29.%?PE-_^ "2%1MS6X01 F9W%
M,P$F*;9&OO^=A'#@Q_<3DH"@%U+8-LE<M"I)I)/!BUI#P";,"]&<%4 [Q<)\
MHI@_KSA&$ U+E<QEN[($N* <[METV$I!MI]4Z;5-2J\9V>YEKUM[K?],[37C
M]2IKU7KH_2<_J'I@U4JAR-8#TU3]'H5Z>ZD>I3"OLJQ9Y6,>$\W5,]-?H<?*
MZ%''?'^%'HI[*/0X(NZQ?UVJ0IE"";(:G:/)\5=Y_)7*6:I*'C\YL\L=S!5+
M7MH\F[&I#WN'FR"[<WCU 5P=!:Z54SM;>J>IX+5Z%G93-P:[3<-6R;(K"Y[7
M.P'G9[887%<J=7ZJC, Y]$P6!;M]CZ5@IV#WDNPS94 =3M&'B^?BJBIF1NTH
M$U@?= ZWQ$XU8=K2A]U-TZL53/,P[>G==D_!=+LE$_1N?[=XJNRZZLC#F_(@
MXEI*P;8^;&U:/D1QEP68-C<M+Z5@6M#6#+W7W[0,E0+J@ACL[;9\HC(>MR L
M;W:<Z%(SD6ATZG-$LB.!:"B(*ARM.$3USJ :)J&0&R5Y5I7P K_T+'9IIOA2
M>2@"Y7B.]NP'CY$KA-D];TYN(\>_MLL\&"9Q;("OR3(5?BG\4OAUA("OR3*K
MXOPX&+?&WF.[EA:KJ(R78_,HXIX^J%$;I\U[@W5UHZVBKE>/NF[J?16EOD;8
M=5,?-'=[=J%\"VLH%6U0*FP_QO/@:F@5=5GG ;& (X-\7=:I,$QAF,*PXX1\
M7=;Y L7OYV=[PU2WL\"KFOYI!?L5.S <7.G6S K+R[5F;MAEB59]Y_59=0V+
MJVK4E0/KFL/$)U1@W1]K-AM%^NN41[7,<"(F@M )6!@ES8=D5Q!J2$2M3:@T
M+*\[3R7:BZ5@L31ZOA(L/9'=Y0J4?\U,1Y5\525?V0$53SW,H3<Y2CB6DJ_/
M5[[1ZE2G:;'F:PF?K6&I2U4*=E\8N?7"<EO?2K6)*VSBELN_'0;74#4,CPF)
M>;6Y2E0QW-LK%6J4HL:'V'7G5)?\RG'CJ'KURJ_- "SH^Y#F,F-!U>9W.S$#
MIDA+D9;BN@HU%->M'=?=OP9?H2/88RS+K./Y#YM%V,-5"PGOD !L,S)5Q>9#
M#*Y^]0(K=/Z4G@E5K+#*YO'"';W;W6W=A/WPP8TAU6RT#K=FQRXQ2N]U#S=@
M?Z<(U:Q&DK;*V=E'/>94IJ@:S-4:2T%-04U!355<WJ^DJDJ%255Q^?@J+E<-
MFCM7A8\9F(==N+IJT 34W&W%:F6E54?VJ>K*QU)=N6K0!+92!V^B*E)=[1&7
MH.;@6"2>L@E?12Y^?#(9K6KB<4?D7O::,OKZ^]\&+:-U7NW%[ 8\:A>.4H)T
M]5Y7R>/MR6-CMP6JE 6J6A;LT;-ZP.7@JP9+4.45'U:='ZH'2T#,HY%I];0Q
MMQ8A\T2-D9I)OI;>KT7DW,Y8C')7;P\U>P=<5;AJT-PY:BJ+KCJ^T[ND7A;Z
M2Y=4&*-(FVR!LOI&VIRV]&9_TPR%DU_?[7]U.X(7<)=-#94Z@:NM]P>;BK8Z
MP6L+)]<%<"V33JK >TE)UZIUC:G),@^ 6H\-Y#59IL(LA5D*LXX$Y#599E6<
M#T?F>M][<FJN_'5E_ R;-Y$S=*-;AW#;+>2D=^IP8+QYD8.VWF[M-B_D0"'5
M;.P83LJ;<,@-8NJRSH,@_2.#>5W6J7!+X9;"K>.!>5W6^0(U[^>ES>$R13DW
MZJXTV%)SI07O@MA,42Y36],E\L(UO69@0[M7Z$.7_V<)JI+/HSAYO)9Q^HS8
MV _0Z>,^FO.0%&\^YB11\7/]I23NMG'&&;^0T6WKFOSS[OSD_?*V7.U&:X!/
MYZ;:Z/5+9BLNG]/CLL8IU22%B9K:)&#C7T[^%OD6QGX@M?EC[1+NQ4)@/[\W
M5T20 K6+]0X:70?0(WL_NI*2.09\-KP[5\[71)>$):2:?BTRHX-IGW680V_B
M%#Z6#DNJZ5?>(XV]%57/+]7SJRH(J7I^'<4FJIY?56TN\@02JQ8CJON,0@W5
M?:9.W6<4:56+M!375:BAN.ZQ<]W]:_![.U/;R#=51;)4/;_J$/_ZZB=91][S
MJ]/46ZW=EO@\V.#%?AUJ2&P>#MO7![6H9[P%C&KO%DZO*'V.3:ZHIE\[B'.N
MZE@*:@IJ"FJJZ==^)555BA2IIE]EREM/[[;KD/2UL[K6=6@\O:.JR4V]V5?U
M:;>'FZVCJ4^KA)_J^O5ROF+HO7X=/#L[XRM*YFT+F$.]VU/0W")J[K;T@[(*
MMR 853.2UQ5_JAF):D:R[Q'+^X]W!JK)\Q91<[? 5.9>=<P]U<QRQ=>H-HIJ
M%RJU"SN1#:J9Y4$[_965N65YK!I_;9TH!KJASFZVR6+J$+2Y&V!V]$%/V9E;
M1,VC\;$>FUQ[=3M3-?Y:CUA.>WJ[K3I9K0ZO+>C6=0)77^]W%+S60J]-@]]4
MXZ_CZ0%2DV4> +4>&\AKLDR%60JS%&8="<AKLLRJ.!^.S/6^]P35(VW\U6OJ
MG58=G,&;9_ WC#JX>3>OG6'HO6$=XN&W4.E@4(U*!\J;< C-/^JRSH,@_2.#
M>5W6J7!+X9;"K>.!>5W6^0(U[^>EC;]6]RYD =>K1@^M_]*^RB*5<%MDNB%,
M:@Y[$8&A;FMVC)<U\GO >(U"PZWM@,(8K X+^KS%ZIY\/ <6[E@E54FDK^+Z
MMYN[JXO<ZK<+@^7H4)R# SO$S# .X-)HKD7F=UAYQIFBF:$6L)D?X#..IYF6
M!:1H>A;3'IUHHJ$KABJ4NC%N*=SRP'C!,#& OA =J<-;?K!0UVPV"YCE9 )'
M,I$D>BZ,I+2(BTYOVV7Z(,W#?3+A EB5_QU@%4T S>\GFA\',%N/O* F C&,
MX!]>40T> 1 !$"8 %^>!29B?XBO>-;2["8-]=EW_D4 +KX>]@,$LQQ50@Q$R
M>[5D?Y#FS,*^C_T ILAPFHS1LCSL7S3UJ7\16]*_2,.>,G0W]B7Y:1G2"K1L
M;=R]D ^Q!:Z-_+K.;>):JDW</H;>Y A!->4ZQLK[=\1OLVWB*E?:?I==Z[8\
MD$*ZU5H3UAKGJLJ4\[I#19NK/$%SJL7*JW9?/ CT4(BQ F)LN:.C0HQC00S%
M,11B5)EC[%]SVMLQSA/(>D2]IE1#J4.,JWSU8YTC;RAE=/1NMPZ5.#>'E-[K
M#A6@5HBS5#W*5D6IW??>>D4!=&RBY35"]L4)I&HM=2!C*:@IJ"FHJ=92^Q58
M52F#<U,,<*J8-;2C:AH#57ID=6 9^F"XJ3%0+WCUAIN:F76"5UOO[:JV39UL
MI.J(G++RHC63.&V]60L?W6Z@V=('W3JD >\&FD.]V5:XN2UH]O1V:[=M2I45
M=F@B$8N1S@+_P0GKVMFPK1O#W?;X/&:>HUKY;K'D=LM0B+D],A]N; I71A@J
M,;>FF+O*9$C64LJU]+ZR4[8GY?3!C@OX'S,T^_I@QRUGCQF:7=WH'$T8B++Z
M7D4<7M2]G3UH@]TZU#G<&31K$:.W(^7"T/L])0^WYU/N[;AY]S)YJ I0'D!E
MZYHL\P"(^=A 7I-E*LQ2F*4PZTA 7I-E5L7=<3".C*HD5/(4F%JZ,%I]O=-2
M/HQM@7.@MWO*A[$UE[ZAMU64X?8<;$.]?3RYG4?FU']"%GZ))BS8?DE=KZQU
M$R6 JI3/:HVEH*:@IJ!V<"F?!R-[*G.@_%R)^5J::(8^Z-2ARLNN0MC4F?TV
MDT.Z[=TFAQPS-(VFWNQ7XY19&6A5%9(?G^QW4C4)N2."+WM-&87]_6^#EM$Z
MK_9B#F#$\I#17K<6 4<*IZNP"T>*T\H>?5+4WNRXQ5AU).EN-- =!SD>,^]H
M&PJ6"B\K"$N],]BM!T2%,A]P5%--EGD Q'QL(*_),A5F*<Q2F'4D(*_),JOB
MLCBR,X2J!#P7VLY7[-!@XR86K:'>V;@"ZR&8=]MH]]$:=!6D5HA%'M2DJN3&
MD.KV].Z.75_*P;"&KM$&7</VXY'+*J)LU&6=!T'\1P;SNJQ3X9;"+85;QP/S
MNJSS!6H>_#5A 7E(K&TRTX5BC]\L/(W!$H"NV]IWX6[ZO,7&PGP\)P)4L4KB
M!9V_8L=VHCF%U%^:,[Q1^\9"/PXL@%*^QW!VMY:!]WE_3A:.O=7!^)HNCS^9
M-C$?F#9V/-.SF*W!\C5_QGAZ0:C- @<F":_7HDG@Q_<3+6 /S(MA'D ]S@,\
M,0[\*98YMV,KTD+39:$.-S/-"<,8Q\083/S>:AH][;,?,>KF_,F<\RL(?GPI
M]@\7/Y_:#.8#0X^8ZS^^P]O_&;MS?@O>7QS>\J=3WP.@^=9WO!O'2Y[0Y;OX
ML_)Z7YL!P3L6/#^&E7CW84/[ L^)]0%H WH/_,M"QI"VM'$<Q0'3'AW7S4!F
MQ(!/3!UT'$4^O7OD^  00*,0QDU@(T9N:*^!3T:K&@AU$6FW;!:QZ8@%G$FU
M@9>VFBWX^XC(9FN6&4YH*^@# SI\ *S!#ING[(?EQM@+7L-6,H%C(5#QMG>X
MS6^ZW7:CS4>%%;@\ 68Z,P,.^@T&;@T:G?S 9J1=,2N[#D,G+-KY_GWAZ,]G
M@?C,L1J1\Q)7[\V)&&!!;UJ#?J-;6,?]?<#NS8@AQGJ6,P,V9U)7=5QYL]'N
M=]_".!Z)5D3R6^8Y@/N<%.T8";?5T4XQGK+5/$_)E"X8Y^]T]%18$VPT!R!F
MG#IC#]C#8P!$$="-1O]<8S]88#DA0PH=QT!"\'X3B'5&F4RP?S-@O1,3;H"K
MIFU3QA/,]DU[S45E60E.1DR=7_DBR%U,'_$%8.G?,THG?G2B"2W@EGB)O+G
M@D(-@\MA(@RSL>A5&NS(GD6:6";-? (R-P/Z:Z"%:"Z6G$/?9-=@'='$"8$^
M9GX0<?02(THH)%O>T.[@5VR&2VR.V:%D\GD8ZYHYAA6#J$ &B'!,\ *_P HL
MW+.0$RTP<<!C$CLD%&A#)'>6;:5 ))ES8L:C>98$D+L :W[3Z@\*R-( C.83
MTP;Z,J+E9#DH4N4R[;%L;](1MJ$3%@]EA,)K,6RS53 5UN,T:ZSI-05%NU_@
MH_E_EJCS=%14G#Q>RYR5C1C*[)\TTWTTYR$Y)_F8D\0-^NC8T01GWGQ[KDG]
MOHTSSARG&=VVKLD_[\Y/WB_%&Z/=: WPZ=Q4&[U^R6S%Y?.<IDTJ,DS4U"8!
M&_]R\C>@8>P?@W@.E 7L.4(Y]O-[<T4$*5A$8KU &@Z@1_9^/(%+YACPV9AQ
MY!>.Z.C2R=:DW3ITM0\>NDP>ZE)J9%%W"0O=\TIR4T1E=@I$ 5,<X^M)XOIB
MNE%@>J%I1<0K[S):11PY+FR@K9D:+HB>X6P^8?ND_..51$:@( ]A:0 Y!SB[
M'T=A!.P<67C& K!C8NKX),PAL+6_8C.(B-\+)2NO]?3*M!Y"=8([O1/T0*$1
M/,"_(*P]=N]'CHFJG@GZ N-MW$G$6["[)NR7D),E-@H,"4KCQ/3NN3Z2:!RH
M+PY;C69>(\GH(<F=J492&!NW(YR VIJ\6"Q)R.LP9]$4U1-46W5$-K%2#3;>
MHL5EMW)1]]&NQ7HR<KQ4MTSL)'ZYU2H#?APB6&> "3_ $")X(U@*ZODI)P[<
MZS?-XH^H_UE6$/,MI.Z1[^C=AC[H-G6CV\U "9$I9^>!;H]/@I[^QN@9Q?U(
ML5"J)>GRN6WGH\%O^118(;+I<6M;"S:&CM>YC@MO:C=Z^3<]@CIHNJYOF<("
MQ!<R4KC(.@$ML0P)\J26&0"NYF=%FPK4%:3#NXXY MH4WHOBRT+8'$E=H3DE
M<A4$'*+R2N:S!SH8 L ,@CG>3. LF>9QFJE73_(?-%9I'UQ?6/!.ZL=XBE1!
MI;6!P6,35.2/H!@TW\KG+)(IH6 6.;_(,,,7B$U'@*CP VX]T8X-BHR\WS7#
M2&LW"4F8!3SZ@97>)U9$>!:02J07WP>T1;.U,N(.Z GO$E:9&&N130X7&?G8
MCP-@3P5(:C/&'2D?G  F?AO/9BXQ*T"^&XHT0I<*V07N7 Z5OH"32>:%Y*XR
MM3&PO!1G2PU?#P77(GZ_:76:C6')O0%NN D6R-A!OA)JKN_=G\%2I@F].2SD
M8K,,#3P*52,B'IDN^:;""0,CR23 +7&+[-R=\"<C;NL1,P$N3JL)V!3$(<(I
M9]65B'?$T4<_^([W6L)MFIIK]\P#MH5\-0".0\(IAD\A.@5340 O'L..@U8!
MT":D2TN<(*R XP9PN^QACPY#G=B;P)Q@KHV0Q;&0!A8.-O@4LN#!0?<M>0F9
M-?% G;]W\*8P!OXMF%_N=8NF/&H;U=!#;^-1"-P=!<@U9OBMI8 VM)M(<\)2
M;)T!JEKSI)P,J@XY@9DGKP+-PVL25QOI83_0U9EG<&SJQ%.\,Y7@Z!G-,LMG
M18LZL,C<?HD0'[O^XSIG$P)2K8W]&GR(+3@V\)B+S%J+N>X,O7S>_2\GS1/Z
M+@:F[SGCGUX@[%)^<,>O6#%H15Y$1ONY)JW<SML7A*V*\T 8RC5G(5R6GY*?
M<LL^61Y8E?G9+AC@O?;;\F I^3O,?.D99^:Q53X7ANY6?NA- J8'&Z5XRP-X
M@8\I232ZL^@E)_E/#[0X'. :8)?WRTGOY+FA!3+RK]GH[_34.G^+]'5ED%S\
M(A@8J2VYF,7$B;2,0VZ/Z3W)<C_#/]HGN&T2:M>@(=HYGC<*WN][@HLZ79XK
M;PEA=H%YK6<QKS0@M?Q]542F&\\"UA"R]Z=7C']Z]XJ;555FEA>,?_\K]J/S
MPESXQ>TAW_JOW A-Z\0@T8#<*A(K]#@N]#"&"CT4>BQ!CS<<4I?D%:\$GNQ?
M:NXMJO<)K#6:SZ%M%;'K]&+*@SO(*^7'H>G9X4M5+I5Y>]29MU]XQ*EWK^'A
MY0,YVH\M_;;3U_O=PZW7M'MX#?5NYW!32W<.KU-#[P\V[;)T\NL[57:QFCSR
MAL[#*LTC=U.I[;33UIO#33LV%3"]!F SA@/=4'!;%VY&MZL;S:,I=ZLTV%?A
MSA\H@4IQYU_[>K-_N+T>JPG3SJ"K-SN[[5%X_% ][?3[^K"W:1,AI3)7EBE?
MC\?,HMC;))2;8M)D'+#OB6#JA81!#&TJ9 K6DIMW=!A#\9WM\IT^&.J;5A>K
MGQINZ,/.;FNRJ?I9!URKLR;+/!C>>FR K\DR%7XI_*H,?BFWV*H66+LB%MAG
M%F'>#X5;RKR1@S2W-J\IW-4'P\.M*;QS>+5; [W7K(_/:_/SW[;1TOO&IB?F
M*[JSE UT"'4$Z[+. Z+R(X-\7=:I,$QA6(4P[.<5:[ZN635@C5QI^KRS[.>R
M -&2/.C7K\[Z090%]3 U<<I3$QFF)BXO>YDIJ9J?_RSP'QQ;V#M4FJ+3;PSR
ME2D"-G89KYWG<5O*G_(R%IUFH[58Q6+K_7\]WSM+[3'9 )B7SZ&R/C"/0N6-
MM#1JP%Q9%<=FLX!9#I6TT;$T$E#U_XIO-A/E;<3R(O,'EFQX[;7(HD.RMB !
MD$H3G(U,+&^$)2?@!UZ&1ZR\H5UX.9/6M$010U@> XN6DMM]+XRG6)'3,(K0
MP7JULGH"U@Y*H65C05U/%C9L=QN=M]N'P=8'G#,36>H95CXIEI9,@"2K!B]
MSTDZ5P-5QF.@CA@1@>JTM(K$$,8S+&P1TH:1IT .%?*BHE1+)JFSNVRC9 5)
MJE\A"E#E*KS RXV&L5CF*;-5,4.DEL/;F77(*J:\$AJ?L6;%@%=3K(J#$BC$
MDE+C$.@9]AIF,Q45HC)U2<XDZ8Q\+PY%;:!+[2Y3TR1;>R=D@'(+58QX\9RT
MM@OA7<)UX-VE; E((G8C6=EY;#[X 4=J<6H.H'P */AQ*(J^+)2#$8#>7>VH
M-;DRUC);ARL/BS2\G"L;"QQ\ZP0':,O?(-D9_Y9OS9[RYU:W*"=6X,_;GW26
MX9=-7S)C,7_!DC.R00@%UP\I<(/]0/ #N4PD]=AL%+T&"^\U^B_CX!VCT:X3
M!T]!UBD6V,JPPCR7UB4KI;I,HN@SU3S-\SJ?2L8+(DXJ<0-["Y'@'V1M1ZP!
MG+)6<P,!T"O2_&KS-'$2KHO_FH"1Z<MC#X9WF9W!,?ZB8BG)(V/:E34IRO(I
M]F)2[#;3+I:5U0HKSQ!ONZC[2(:743A6MG^R,@8?O/YTIUVD>@X2=J8":5L:
M31DZ\KU[/XNI)!J  (&+B)X-SRS(& Z*(M#QUM,7BJM(2M4O< !==" HF^N?
M6;'2*A8J3^JJG:).(6'.V06SWR4=*5:"(,WBC3%HE:Q\E9<4V%KA?26L>)5"
M9*J^^@[KJP]4?7557WT!!R]+&!/RA(1G$+=+*DJ^62AW3'RE4[BJH_Z!)CDP
M$7>N$Q<1+) *B%M^2-IUPD/1^MJZ'DLFA&>Z9V PBVT,_7'T: :L-EI-61[2
M\6LUET4=>5P&!M2V^T7=9KRN0S<ECGR97%X 6M1-EKUNPJ1?E=108!+\SMC#
MDN89E0K4>L>W&]KJB^D,NL6ZYVLN)T_KK6;1U$T* &?;;14+N0KC R=(]^/O
MQ>9:HGPO]]E11RY>9-YC0G^X27O^Z/EV.X_LY?V-2@IL%]O64,N87L$$^[K*
MUJZO#M-JL$U-T;W8P K+6']7#)BW:D$)?F,8"WLMM;>D3\,(R_+G@9<OZYLM
M/W_,7<C^+!BWJ9\6O0+YI@7=!1498/:FU^D6:<%<VMJ,8\F;[K"]@)W+NHAE
MW0G2,)>VNN=3RXH1(,!Q;Q/:;L(=)'<JP+# (&G5 1:@S5!30:MCBL6F\8C
M#_+EQ*GXO.OZC_3652R1WL:62&]/!9&?+7_,E>ZU]V[#^L<K)RW*6;Y]*F9"
MW-0J*2R,(;;9\#=2L$7!]-X38QE+QMIBA."2J2VU);AM\#K1P!6(_:4^*#]F
MIA<*8;78&E-6\3\OVJJKQ#@H2E:4K"AY5Y0L&P[124Y(S;.HV2_I\4#28^KV
M54;DLCV'(G)%Y(K(*TOD2+@9(J=8E(!E&_$JLE9DK<CZ ,G:P>Q#9PQ0BJ0+
MG_V@WG%<,0\C+(MR[UB%1EQ!HJ"C^V[D>/2\HGA%\8KBJTOQ% ]J^3/RU0OM
M_#Y (IZ:-L4B(4_X]G=S.CN_RAPI*+)69*W(NM)D#:N5H>+>G+=6Q&:/,AA)
MT/+\G*>"*&I6U*RHN;K4',86-4X5Y$Q=NO&,,CWO9^,QYKL43P%?,P6P(D>#
M%Z,0.5VA,7#6&Y%V_16?- NX'C5@#GG_X B8!+.BF-\\ X2<ZQA-,&*NPQX8
MCV/@7((?I(NVS;PQ-NA*?\485Q#YVA3;.-/M>)O'(P/@'68$"\-^W!0# -BK
MM3HR#" )G< 9\5@$!ZXZF)5!H: \B2D3SBUR'L(DB(.2TT04 P;I9U..>(0L
MQI/"L_PLF0Y;[">.6;*OY4-1) <? 2B70L+@_D*PJPW <OT9Y5EPV_')0QVY
M';B38?D#&#V"4134@'Z6!M[+A6. 8<@8L7Y^0,P#?9\Z+)Z:<QG+HL.*HZ2[
MN>M,';X:/9.<!3-)D0)P3ZX-1J25ZL5.T07T*W>&+32>1ABFG:MI\>R'PT.!
MTHPW$:N0 $($$2<[D_;"ENI[*79KF& Q]EW'/^ZX <!BW#$.VQ3_.90DA,I)
M0+2\UKZS>8D)!$05^I@$!3!_=*+) OH##GBPDO+-)_(R11"DQK!]-I*^#.](
MO2SPP0OQ1N)JZ)!)@MQ'9NCD@AM<QP*F0)%C@7#*$K;DNJ&GO#"'>QD'#F+B
M!-C5HQ^[]E*,S.#/GWG> M3X/>L6IG;J,Q_54:1B@!N+Q"N0$"GN"X.1$( C
M8F.4_8-!;^1>1B86R1;C2/8X#U)H)[Z+*9(4$4:ZU<)K^<N(E>.[D!TG4\Q0
M:"I&9;]Y'EB5:2P/+^$,R7PP'9=KFGE!0"W.09%Q9J:L3$5=N$6D&^?=N(W(
M;4"YB\=CN%DV5(??PO&<WN ZL (;5Y_E6MF='C'+C$.6:/>TU)*,T'1=7! !
M\&!" ">;37&^$IHI4@A R3T,,;%"!/#Y>)],L<.)P03]0/1RCQR$".75A0QD
MA>!-% *-' CV!3<25H5A.?SH +'4XRE&,)&I$'R!?38SD4/A/L#4=;R/YL-O
MI7>(WW@"%!XN4N5F/B?!#Y=-BM;'PQ"1NFW'Y<Y-$6I, 7P"L701D@FJ5G&
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
M_H\[Z<$$>/=W(@ C/H\ 80C6'%%50#^(PVM9>,\C'_99O4W";S=(/+ )J"W
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
M=* >IS,>\&2-.>.^.(>\UYS0:#>,W1(M55HZ(_B2C2A.90QT4SK'=5TA/>V
MKKGF+(+4-0#6P1<6(YU1! I*G3?$P$27QQ!#C]SZOMQR7R&W["4-4KW%(^Z8
M[T-!Q)> &+6GL,G3UP-"EGG=*75RAFDF@2:$&V4JJIE(D\<]."2JTHTTPWK1
M?_Y\@<SR2E3O#LS,A#YXTZGAL1S[GF3P7B$9>@9G#VIS?0"7E1SZRSY2'%[-
M8'96K0C7326BLI0+/;0:"I5 ,_Y: [:4"X8^FU-G<K)?PP=RP:Z_(YRY[0+D
M]<DA'BI&Z<:M4Y,R+JC:I(T8+S09F:<CJ9Z-+,BM2< _L2 [1=R1KS\S0=7*
M<S/T% &/P>C0XY"K?]!QB/[QQ<OI62^V;HPD98X4NS@8J59>D"P^*(AR[RC4
M1(F0:I.=Z0:P&(8\21A[/$[.!*1_^-GCX)ZV<0),@JBD,.K!_UB8Y>1GGU,.
MWFNFIY&KSQI/'SM2.,:A?_"9@A5 I@^5!P<6X/D2'GVYG %DL\QJ4]JO8&HP
M4S*9O\Z5=,VB?PK*3ZP1@7N)4*WL"T^F##<'D'OV>^J!IF*;[?XQUF25#F@
M]J$@J9MT34&NIM(09@SF1@\FB[%[#_>/J=B_M.:W(./R)>RT=< CT_$!(*U_
M4LRP7S<I"X^6(E@RS%LBF"KSTZC,0@H+XT"L&7Q=+80)(G2+6< $3.FJE:_,
MZ=Z\)%O1=TY>@E%]<6G[ZE !VUTT[:(M!PB JPS*;XKV#EZS,LCM9 ^];5@7
M4U.(YCX\ G'R0A^R;K<@VP.PM,@ EBV<,6EF]*I.+LXOS@N/MKTIF2U9O;>=
MN_LIC.9=>2Q_Q3@,)&J/W%_:<RNMB4TSV'&9+)J^$'V82WXXU_^^[LY80S7,
M5/[<GGRP^OW.<-!NF"<RR9H&P][=V)[D[=OT^ OG;<]]M_)5+7,[['7XU5UP
MYI/;S>XR-%GP:W+Q9&1."_$^R<;/+%L_W784[V>:3;#=@/U+]Z$?VHWL/J;9
M!QIX=Q,:]97/_P%02P,$%     @ :X9E4>^ ^1=^!0  _QD  !$   !D.30U
M-S8S9&5X,S(Q+FAT;>U9;7/:.!#^S@S_8<>==I(.[VG:E!AF#'8"'8HI=M+F
MH\ "=+4MUQ9-N%]_*\N 0]+<I<GE>I-F,HRU6DF[ZV=7NVN]YWX<M/6>99CM
M8D%W^^[ :EM?R@>-2EVOJB'2JQD#Z!W;O(#.:=<>V..6]KG7=RU-3D"Q@'Q=
M&@H:MW6S?PZ.>S&P6MHE\\2B>50Y9*$&Q&?SL*7Y=";25?IHS1:0>,["LN!1
MLQ:)8\C&$RX$#Q1IQD-13MB?M%G?CF<D8/ZJZ;* )C"DES#F <&3C$'_=-C2
M8C9?X%%ZIVU=+=B$"9":O0:]VFGKU9'4[381ZHU'E&&:&B45HFN-W?Y)OVNX
M?7L(H[.Q<V8,77#MOQ/H,6V2DZ=^!&<5I]*M@&-U4YGJ!X>UTG\DC>& 8=HC
MUS)_ =.L#?*^]A;L$W![%CC&N&,,+:=L?QE8%V!T73G3J-4:3X*G=C^$*0]#
M.A6,AW#)Q +$@L*G)8E1:G\%8QKQ6 "?R2=T-1I"E\=((^F*/<G]ZD7]S;OC
M+@\B$J[DX.AX'W#RA,<!Z"<VVGSMN0LF:#F)R)0V0WX9DTAKUVOE3WI5<K51
MUC@]/Z(QXUZQ0$./>N#02-!@0N-7X22)C@\038U:HP8D@1GSD6$CMT.GRY@)
MADJ2T /K:KH@X9RBR$' DD1*C/^2TR."PH+&%#7+*:'4S70HI9Q+E"%.,,C@
M07PV8U,<27O(N4SG=*/)"G!*L-FJ!-$R3I8D%" XY!Q"F5EIH;P"52 >1_6\
M_)IBX1JKQ$MVH$/B"0EI4K:O?+H"8YJ^&HF7DCPK6,%7M"O:9$ZE]$0T06(H
M%Q6W\'B+Z-@!_0TX:6TE0KJ)C.9&9V"MM^K88],:ES%P#XR18S77#W=B;A>@
M&JAM6EI-@ZXU&(P,T^P/3S=C9V1TU^//?=/MM;1ZK?924_*,(1$KGT(+M(C,
M:7D24_*US,*$>;1)OG/F98SF>O&;EUNE7'-G\O"E!N>9YZ)1-EZLKI>]^GY^
M37[NVJJ\O>&ZB>&A/GL,.T*Y"(O,2V=+'UUVBJ#TI0MLW"*FWY8LI@&&HA2Z
M.T#<(^BN,=0/][S]#="VGK3Q(D1;L8#S]?<';XY3!Y.P2"V"/V/Y(^'Q&VV/
MA+;&+XHV%F*<#M0%@+>'($S&1J8"ZQJ*A,GK(XII(E%7DM/$]U$<O%<8\1&3
M280P3%20G;&0A%-)QPT]EFZ- "L6D&WI*]1RO!720W?#;^4^.$SOS9\#XBX^
M=O&3QTL>9X\*X+;,BA48V]G#%FSO$&VI'38S:Z HW;8RKAEOHO7.];<NVIR:
M6G\KWUKQ'[@*W%/Q'8E2Z)L(IR8,^?=<?G"HTH.\I+M:W/3(:[MV5LT'K/['
M)4A=DB8\QOQB2[J"A/MHG!>U].]A26=5=SX:@T';T:OJH0IN1K*'%VLB?*A
M+R.?#=TU^;I3/=DK?8#E?W[I+=FZRS&QDY99AD+EXL_6%-T%HS/, S G$.P[
M!5NEP6D*,,((C4H_>QOMC6*&-UB$5QC=&"JK%_;OLDU.R9R./:M_VG,Q4+^]
M+F>.#GB!X'6$8C3NP?.T;^=W?+YO?/ZPB<^;\.QDI*%MGHXMYW=\3AWN Z:(
M3LB].0:@9QY[5'P^V>3067Q^YE;)1>1M>7%[1);]Z'^G9OA?%Z^-.^O3U[]B
M=<J2K O'IJI 31:R[ RY@ D%C]( 2U75ZTM[AZK5ES8>HV4<\83>TB$YNMD5
M*1;R;1'(NB(EV4?AR!E?LH1"LIS\@1O)SIQ<[3,R83X3*[4=$9"H8THH7YQ)
MRO*"XL*)K+>G6<L529,5ELXS&M-P*F>00S8@41<6SE6O<K=_LY7O /B-V=O4
M^%%!+=W$[)_C./LJHRJ]JOR"@\3TP\]?4$L#!!0    ( &N&95'\#7%- 1,
M )#.   1    <F=E;BTR,#(P,#DS,"YX<V3M7>MSX[9V_]Z9_@^HOW3OS-7*
M7F>3V!/GCFS+&TUMR[7D)&VG<P<B(0D)12H@:5OM]'_O ?@02 !\2<O8E_JR
M*Y,X#YP?<(AS\/KA;Z\K!ST3YE//O3@Z^7A\A(AK>39U%Q='83#O?7_TMQ__
M^9]^^)=>[PMQ"<,!L=%L@ZYO1O?HU\O'6S1R_0"[%D'7GA6NB!N@'EH&P?J\
MWW]Y>?EHSZGK>TX8@ #_H^6M^O#^YT@@>CS]> Q_PJ_C;WKWWC-9S0CK?3K^
M=(S^Z_CD_-/Q^>G9?Z/_?;C[OUZ/:^%;2[+"*,!L08)[O"+^&EODXDB2Q\C:
MH0M>![86XCBWX[-37C&'</UN/+:Z)G,<.L'%T1\A=NB<$OL(@25<_QPXNU49
M"HI,X9?3CQY;0)'CD_ZO=[<3H6_"VJ'N[YG2KS/F).5/^_SU#/LD*?ZJE(^Y
MGYR=G?7%V[0H,*(%K&F,D5S>#E("N?#G?O1RJT4!WU]O)25"O[? >)T6GV-_
M)HK&+X#DY*QW?-([/4E(+"]T [;)*N(3Z^/">^['+SG9=SFRD#$ Q$07O]7(
MLPG5T\ +37'R:BWUY?D;#8&+J>7K*<0K35U\:ND)X 4O?I(M#K8,-FOB:ZTL
MWFC4\H,U,PB!-YS@^[R=UHQ8O*\;P3_K8V8QSR&@@17TR.O:P2X./+:Y@;]3
M@WBN&Z[T3.R ];G&?2C4@U*$42NE*R?*$O@L4$T"#W768(')ANDKF8P['NRZ
M7H"Y#Q-_K=?4G7O\)^^%Y]P,4R!#_,?3XZC8?PBC78&S8P]X 5V2@I&W?Z9,
M;0*>DPJ1)^!.P$U*#E:41YS@AWZ^=,(@](D]=G\4OP%.'RA%#7B?C:GB(CJ*
M+<-JY2WL6*%C%M#/6&HWT_$/"K5Y\[S$#O=KDR4A@9^8TO3:8-I/8,\)F(8D
MMAW?3\:WH^O!='B-+@>W@_NK(9K\-!Q.)P=CI]9\P.!D@R4)*"A38OEL60,,
MI]5A0!\R'/_2;5A2H_GC^96W@FHNB>O39S("HA6Y]7Q-SZA"9 #JFR*@)E/X
M[VYX#R"-;^#5W</C\*?A_63T\Q"-[N'O(?IP.YY,#IBEYI\$GO7[TG-L&!0/
M_PAIL"F&2U/>@-3GZDA-IN.K?_MI?'L]?)S\*QK^^]-H^A\'B,PF+W%_=8@-
MX'V[&W@''VET=]A?WCC>2YE73(L9 /JNAA\<3'Y"-[?C7SHX@IB$JQ5F&^@'
M=.%"J&UA-QA8(KBC[N(!3&]1$F-1L:P!D._Y&)GZEN/Y(2,<G8@=\N9(8HBV
M'%'"LGNPW&#*?L9.2.X(YN82K3Y"0?_*8/2SO-$Y-1+D2*;OGH4'%CA[7Z@6
M&S;S1&_/D^.\/66B[AGQD3P3-R2/Q/(6D8:1*37/#08]R1LT)D42;??L>L6(
M30,^S$]\;^:)P9:?\K:,B%!$U3TK?O$\^X4ZSL"U1U E=T%G#AF +1)76E3
M8./3O(T3'@B[-MIR01&;[AG=E&:X)@&F):F(N(S!]-\HS5MB@V(^2#!"$:=.
M6O^9L("WP EQJ<?NO8!LA]*Z=P9K?]98.R%'$3T2#+IG9%-*H'+H?_*M,A:6
M2"%&%,3=,^R5MUK10 Q(P25#@^-1 !2BVR9L+F P]7=J.TYY")^=X=(]FT.X
M%:ZX*& =+ G+I!NWV<GR8@;[*V&?Q D)5BC#2XQ6N@=#E-B=XM>DJ<L/#*95
M@KN(!@FB[IEPB)D+'=E_(&RRQ"R>NU.>ZHWY28GL$D($E$B0=L^DCT3TTP?,
M@LV48=?'EA0P&]\:3*R)]2(W(#@@F47W3#TA"_Y->B1KC_'O43RDR#\UF%8)
M_6)"E%)VT*+AS"=_A%"=X?,V?:8\-5A4"?2VA"BB[*)%JR2 FR2-2Y+'GY38
MKWKR&'U(?G5PED5.3TXQA&Z:7&?\W&!Y)0Z42=&'B+B#EE53G+)]C6\-5E8"
M0DT:M,/&EK.?LIDUSPT&5L- .3?:8=,6Y$!E2Y<7,QA>B?^*$Z8=1J(X*YII
M]E5*&O!0@L;2+&JW(=&D3'-0F$OH(3A50DU3:K7#EE=SJ;+5C6\-%E<B3UV^
MM</6+LWN9<>.U0H;L%!"U2H)P0YC(R4"9134QP9[*X&LG"7LL%WSB4'9N(9W
M!@LKP:F:.NRPG?,IK(P?U[\SV%D)194D5X?-K%L6-K!MH2MV1N[<8RNAASP1
M7Y?( (P2O>I7F7%?GS)'$G?T(>+?0=CD;$HI7%4+&V!28N!,*N< 3B$X:5<9
MS^])$ 6KXCTCM@FC"C0&J#2SIG+63>I?WAP![R1Z3KC_Y8":,-70#^B*CRR?
M?#(/G5LZ)P/73G$Q 5>-S("=$F%GL4MYHX@YXMQ%,F2+Z@&^R%I/+@[!)Q%[
M$J[7T?YP[#PPCV\2QQ6<9$UZ/:#?%"[Z11]2(4B6@D ,$G)D9]IE8-.9(+ E
M7BP860BIXSE8R@ZM($YY^S?,6_%%.0Q;@?\+#997H1] Q,+\R\T=_LUC<7E0
M-].!OR)_0\/@:05^B( =.KDYJ:P*_$G,-$GL^V@.:J!4#_0"BJ!4$WZ(@] E
MI>/:=+CQQ&;CV$GS?:F]Y'90K:@!4B4[D4S$"+CDJ<8M5MU%)>URC\0B]%G$
M7O"AO"9SPF 4(B&A[W#:[KL;+P.NFNG\M+-* L5W.!&9Q=[85;L+OSS]5AJ\
M5"UL %!=_9V9P#M$+X7HI)UKX#C>"Y_B@:&)7 #^C-=.^%)W,.&W&SL#PNJ*
M\QS"29<=SU$JEP^Q<@7YDT1XIF]WN"DLL;L@_LB]PHQMJ+N(H])D+C:#<[6R
M!A"55%#,#E$7)0RWD6LZ%]Q=: HFUF54RHL9 %&2/F7S[P<D5!.7?MP:TAHP
MJ[MFXO#Q4[,(*SXC\#]"U/!U35R??Z+BIZ2PJS4C-4"I)H,D[BAFC^;\DY4(
M.'1*.<*(P^OQ?.3R5;<>H]EA25$!/2:?E7Q.&L/#)TGBTF&S/S!O35BP>7#X
M<EW7YBLDUCRQ)9N^K)#!_,IBC(3/7Y'@))Q<RJO#()B6>96'6@T(#6"I>\K-
MR\4.GZ$"]P41"0N)?4OQC#J@J\F+&<L9 %(3&Y(SBYDAB5N'P="OU:O2FVJ2
M&:#2;6#7K_L[]*2*X$E/K\DL?\A 90(#8)7WP.=><<X=ADI=G5G:Q^J1&."J
MM*O^T+<,@%UBX,Q77D)$(L<^"DPE!0W@*'D(P:LGF"&96QH4=1B/)+TZ7G-I
M RN@S]!TM;,EVB(&#(J.8(OXH(31P?IYTV8.;*P A:Z\ 1<E25"$2_;@R -.
M?,+0#QBUQ F1X%.>0-W"+E->7H_3MVKB0)Y$3)A&G@UQMH?N5 VF\KY5D]@
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
MDIQ9E1O.B6=[_\ 7RF_8C>*#G/FJ2#X&Y4$!?/[:<Q85E&CBU*$[OC!XWV)
MJA':L,<KI\ZK?>+2U"?BFYC)R.7>SJ>6N("PQ8T"7[T&]8TJ'X@3]?_TZ,@;
MC\T),%-Z<.V K+P#5U2C?OWXV.B56"'O..V.R/)26VSPI:[_9^'W^4?B=4WX
M:&3J\4?C,.! \>T OQ"^1@K*0. $J*2!0G+]<8B=*6&K;*=)++/WU>KOP1#O
M"U^#*VDE&GV3]=Y;_-MVY:+1V\YCTK?8#9.J-1N0&@Z8;RL!4:["+KF' ?RV
MA8';F?W,R=MEZC-EU=Z\IR)RKRVJS9BZFAH-QDE?;D>K-6@W:'&4I,ALM"L^
M.=>^K8ZMBMQMW5?*K=TE7SJQ33)L50ZD;B_$JJG/+HL?\F=SYT2UOQ*BFD+[
M6191(NO/62-17:G=-C9+9W6W#K)&^DZ(\O$6C,K '[28V%*%U@=D %\.,8YL
M3V]%9 .M64#\C7M)/=]SPI;G50J$5ZE)/SIJZ<?_!U!+ P04    " !KAF51
M?-C]+\P.  !CUP  %0   ')G96XM,C R,# Y,S!?8V%L+GAM;.U=;6_CN!'^
M7J#_P<U]=NPDU_:RN+V#\[8(D(T#)WM[15$<:(F.V9-%'RDY=HO^]PXIVY$M
M\45RUJ2\"Q2]72^'FH?/\&W(&?[X\WP2M6:8<4+C]T<GQ]VC%HX#&I+X^?U1
MFHS:/QS]_-.?__3C7]KM#SC&#"4X; T7K:N;V_O6KQ>#N]9MS!,4![AU18-T
M@N.DU6Z-DV3ZKM-Y>7DY#D<DYC1*$_@ /P[HI /__DOVP=;@[+@+?X4_=;]O
MW],9G@PQ:Y]V3[NM?W9/WIUVWYV=_ZOUWX>/_VNWA181B7\?(HY;H'7,WQ_E
MOC,?LNB8LN?.:;=[UED5/,I*OIMSLE'ZY6Q5]J3SZ\>[QV",)ZA-EE#64J*:
M,KF3\_/SCOQ7*,K).R[E[VB $MF.1KU:RA+B;^U5L;;XJ7URVCX[.9[S\$BT
M :,1'N!12W[^7;*8XO='G$RFD5!;_C9F>/3^B#WC6#9E]_RL*Z2_NZ2""1(*
M#B]0)) ^CC%.^%%+5/II<+NA.</3B#P+:V!329PHU-%4TGD[]1X3^']A3+P_
MNJ23*<-C'',RP[>@S@3?45Y;::NJOQ04Q,<W$7UY&^5?*]M1W=Z$LH3\1QKO
M]7P*S8%O*%O^BL/;&'K%,QE&N,<Y,'V%$T2B*A!J?F!'6*)7AVF$^Z/;> 9M
M1AG!-9375K.CB@^,3C%+%@_0D9)>'%[_D9*IX+>ZFL:JWJPU>T' 4AS>$30D
M$4EV;%1U;;MW0IC8$F%6CS@FE-W3!//<KU=X6*.=*U6[(X1KQ&*8B?D#9H]C
MQ*"6@,8!-)/L2?W1!>(D *ZO"$RP,#J(,ARZ51K7Z:5O\34).$!1D$92Z@[@
M;0#'\P3'(0Y7T,67=YIVY+J !AL?B<1,3-EF\RZ_(:?;$>)#.>>FO/V,T!3F
MWI/S#HX2OOJE+7YI=T^64^]WRY]_RT:H5<T1&N)(?N^W[0(=)XI=IHQ!GS?J
MMRZW35B/;6J,6+"J#/Y88&MS\;(LT>'I9")K:Q.8KE;R(T8GY6VU_"#5:IIR
M^#2=BFH16!IE(6:P9#UJO6#R/$[D'_?=Z&(.AAXA_B/&VQF*Q-S<2RX18POH
M2[^@*,4:,BSE/2!IR["VN;($4L[AJ5,.80*20Q@,=Q@4AQ'\'B<6_4@KYC]C
M>OW+B3IS2E0_&6/VJB[_P&"M;B9*+^8_47K]RXGZWBE1JW7R BQ*0\QF,?^)
MV-2WO.'_ZK3A'V#QA$BXW&+!>"QMQW9E8"7M/TU6,,K9^YM3]C[%L .*<)CK
MZV;2=$+^<Z73OIRBOSNE:(!YPD@ FQ"QTM'0LEW0?RJV-2YO_A\<CV\*'X=^
MHM&+>4"->BC3*5[.T+GCJ7_3E0>*7L^#*!4'"A\H#5^@NVN7!#;B'C-F!T"Q
ME>TZI<Z"GD908&QFMRZ#W&KDGL:!W?:E6-YC A0:*]APN_F_PB,,^H79X<\3
MFJ^[K882G9#'O.C45I#C>,,_%0?.,'+>8<3Q0.C1'WWBV="JZS)Z.8\I,FBN
M8*EDM]_9\L$?NEL^=WP$ZZ3'A :_CVD$S</%FBE9:*S%++IONZ^DOE)A5Q9N
M2\6V[9>55!B\<R]+-I!*C4TN_M+23@FRIZ14=P4G;GTGEW0RH;$5(<6B#6&C
MJ+B""K<^DEX8DDRC!T1@L7&)IB1!44Y[W:F*A7!#Z+*!HB#0K9>E%P3I1+0M
MSERGBEM2L&[LCV 5J3\CJU934ZBMBDO!LUM?S4#<V8AQN+KWD4,%6P42$-T:
MVT:X(6S:0%$<7+OUV.166G;KVX:N##<0*)APZ]3):6@^LBDK[ LO%A08#FA.
M_;C-\8 6XCC)_A['MH OC%A>X]A67T&.6X=.\:ZG%3\JF>90I$*@8,GM]8U-
M)]1*[87%31N#8$/X,L%0D.;6*9&[@'Q'X^<GS";R8O)R7-#NAPV2OM"FWA<;
M "@(<^NQ6'GCA1]^>4<EA]7J:,B^"M\IM$>BX-*MRZ,6>TWFJP9#;GT:BC'=
MCBBSK/=\F2$H:"MQ43@X6[()VMNS1=WC)!\QJ+2>K7+[OY"S^O8-& ZT*5A!
M"H:PM AHXPL\H@RO#X4QOYXG# '_)$9L<0OM+KLW2 (MH-_S;9Q@AKG^:N\7
M_*K3SE9*>_$6T!>$[V,<S'I\L>H2I:6=LKJ'7J(<DO.-X&-\S"7EB?#7+2]4
MZX@M%G7*JL8JBWN(;<V-$3!M1UST1^*&F_2@8C8C >:/- H-K*B$G/*CLJPR
M<E0 ?(Q_&6".H2U$0-P5GN&(RCN[2Y3:,Q6M7".X,F#P,6KF$<L!.\MO$H'B
MO7!"8L(3,7C,L)DWVPH:0: M&!\C: 9@<7&*5W,X0T'RF23CRY0G,/XSF :R
MF]CB.AW\+]2?7M>JK2D37BUP/H;DP*J+;L(V=UB-S->V#-4TA8\10"(&DR=B
M2LF4-4>8%DJ[W3Z:K+4LZ+0 P=/('VEHYMY7*-DT1K;4-T?SN-@J2!=MG<'1
M)-@LMDQHO(P1^H!(S,4T@'D_AA$>U$X)'XM1H#\2^84T]%G(-HM!"T!>AA:M
M)^DEO@M848^T=^J4$DWQ>):H;@XL:G\[5]BZR;ZMAL5-6ZV4DZE'T9PWL'PE
MSW%VF2)8/#$4<]A["*..0_FWI8F'_TZS=8\%^B_U0<<;=J,AE$YV7Z =[./.
M&G( UR!.M]2WCXAR/9RNTY,ZR,FVE8=L,[<%V/OF#[F2#Y@1*B)DF3@HO\+9
M?]?>D.MY,$;Q,QX SNO1" >ZZ7S?BNR[ V;?[8_RNO3C\DQPFF:J5HW;[NO$
MM+9'A&H-YN-QL<@T!WH^,#HC,.)<+#YQ$9:>^3J$TQ'FI9DIKJ%*)=^LIE)S
M^7@,_8 6<F9YHKT FH=A97(<C<U4J<3UIJMB#RG$[E: ZN59=P' (QTE+XAI
M@ZW5,H=&YRLRXQ&X%^Q=I)S$XB@I"XN4XU[V+[J["]6J.32.M6"-1^DN:%<T
MPOI@<I>9O;22;S-[I>;R\=3^"L.>.,BRS(O[!KG'(C1&HI7R<2#0](%B.(0&
MFX^'\'D-,Z?\%>$R,/&!X0E))QHB+60;3J<%0A_/VN4##Q<P)H7";85C;NJ2
M*H&&TZ>"Y>,I?"''F_7ADU&RX2P:\7F9E+.X/"CF[=>?*%J(-YQ9.Y#F@WX7
MZ^6B[MOI_BNQ6Q0^.&Z+$,VG_WXPFWL^K!*I&W('Q^<&N@JW!9Q2N7QC8#6G
ME+XU4(ECNPH/CGP[V.;C9S^L8BL72ZUYV8^L"U]R4C:D97"<W+-4[ZWT+56)
M+8@?(K<%D%[F"56L)UX#X>O2K*OFX.C6@?4R)VD3[PKM3IS=U2''B3E6I@10
MJ]Y0+Y%I.&,:9.84HGXL@LJBR4P)^RO5TG"**V$UIQVM1GKQB6'QRUJG\'6$
MK_CTPN##]7WU:AI*93VPYL2E>^%RG?RG+HNY"@Z9OQQ,+Q.=*E9EK_"K.R'*
M*V@HR55AFA.FNIA?#SH2;&=N:X>&G3KV'2F@WY 8Q<&.UV1**_EV3:92<WF9
MXA4T#S .5[D!5CE/#:. 5LK'_J_I!"7O8ZJQ>9GU-:_Q+>>I>#%+AAY:O(UB
M(7M ?"H0>IG_-:^WU+,O%>37<\P"PO4W7,VR!\2J J&7.6,'>+J\D"MLT':\
MU4HUG$DM-G,"69?WT =8/NCR1)_07#A:Q,,C@/F&LLK7W.I7V7#ZZP-7!)B4
M^;'V%+::OY.Y]+&"_LM?1;MLON-\)=X(BO8=R@K< *=W9%942)_XR"2X[UZH
MT:>$B &>P,8.3*0_NB$<R/\'1JP>6OO:G?9-.Z*W^^.;X/8Q/K0:,('CZ86^
MF8&LZSMXDU@C]3'@LP84^+SNW+!VC5^'(618C;&@C3"%&YJ^W8SQ6N%780@9
M5!\3*]?  F7?U@YDA5^''4BH/F9LKH:E-THP>W-CV*KUX"UB"Z]U(.F>]G./
MP1B':83[H]R%<C>[MI4""W-RVM=B+A+IRJ\/T,M'V,TS@J(LREQD<&<SP_5'
ML[#C1,I%"LHRZYI ^+@Y6NO]F;+?Q15Z&F!>G3J=='.XTZ'P<5.S5EP,OAR&
M+/FJ167R=-+-(4^'PGH;LJ?Y19D]Q\T<HU1'/^?HQ1P\!_SZT/IKQ@/X<X2E
MY6ZF/JB3\.GM/N&T6]G07?+L\!M!-\Z"3@YV5/I^8/H[_B;!QA%M N3C/'B'
M8MVA>/;/?C*Q85_;7&2*^^A#NTB)/*43;P#=3J:,SK),K:;N8I!K($<&1#XZ
MON2-9'',6H4YG5 #:=/!\=%)]1$%8Q)CMJ@R.>F$&LB9#HZ/J<AN4A:3)&4B
M!/V&S,6?C-U,(]- QC1H?$P\)K*/)RR5>>RE'^ 9]#52II5J(&E:/#ZF%E/"
ME+$9=1;O2\$&DF>"Y&.:L4LT)0F*Q$TI<=$K33!;Y:,U]CVC: ,Y-(.RSRZV
M]P.38O(&-SZMHA[98R4&_XY*QL&8%L(0_!DQ!J:SD)JAZ#)"G),1 <,P@K&N
MP6D/,=)4,L#9P?+QM&6)%C",8$J5FMW@"I:I%&P6AR8T/OJ85EFEED_=FBE3
M"32+*A4*'YU269JO&N.^2;!9E)G0^.B26JH[H L459JKBQ+-(DL)PT<GU%+9
MW(/1UCR5R322J3(@/CJ?KB?3B"XP7H;75!H/+62;Q9T%(&M_U/Y>PEM%Q#WB
MF%!V3Q-0=S-.SLW6*J>$5,J<H5(IL?]5W#"YE>XML0N_A$W$0@2K340N2>U:
M3B?F^!%(+1G%]9P.B8][IDV-/\5H%56W>O; FK=2V>:25PK'N'5R<;MBM8G(
MHD/Q)>6FD$.E1+/H4H"P?R%M3Y/--6*Q.,-^P%G0[0 '- Y@BI1?Z8\N$"=!
M+P8[BU+Q,JLHP[-!PY%[[[-L*1SV@!#TC._3R5#$(FXHV$\3GJ!8G,YK3*UR
M3?ON/:4*JM1[?7"Y*F2;&IWVOIJ4;_?*VN!]G!P5;9+A>,V"9$H&4ZT:_ZS
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
M8_0P.SOKVI9&@LX?HXUA2F@%L(5L@R\>-:[LW0>#H1]76"6M1L- $8&\9?:
MOT^3."?O^459 .(?/V=EUI*/OR^2C,S^\7.>LFV6A"IKXT>V@9V1Z=^>D[=?
M9R0J::(_[+-#?Q5<D^=P<1'G;.R]1Z*94/!4,/!S.%(DFE#P5%']#D<RP26Z
MMC976.NZE.-\)Q_)GJ*KCP0C3T<<26J4#Q7+-'>HWP-Y)5=_K0T$+2@WV$TT
MXTW)NZER'&CY0W")MC='^5]WDY6TG+YDMXARQW*9'$.XLRN9N,Z3XBF?%XO#
MN_8&+E2;?H)C8$.74/42 Y<U,#2)4BJV'_I=W*8<]XS;&S[*M9I8OV2M@Q-0
M+X,5CZ9PT.1@J0B\SMQ;9ES^]\=LJ69MOU5P AK,4)<M(0PTF5D.!+W*LL*.
MH;)%< )ZRF_&3@4"FCPL!T+>%GF6A_&,IV\TIZ?2+#C!EL'+@J-]'&@RMNR:
MPVNL5&8=!,?8[H+(R;- A"9CRZ[,%DN6NF%P#&R7KDV;$ F:)"\B6;5KE[Q1
M< SL\FE(4P4%IMPN!W*:+6*:EL$):+A_8[+VH:!)YE+7YGSL9U]A:W.6LR"0
MUZ'-V3Z12TLVYV,_)Z8F-N?C@WO ,L%=96KQ;A8]QF1S9IK36$./Y1F)K.T$
M+2@7H\W92,LZF_,VF4KK-N?M-YG=SB4AC%TS/H]A3%S[JC,(DU6T"OH]X! ]
MH5ZE)W0U#D2&Y(Q?95]GU3-)?2YK$IQ@.X6K"%)@0&0GSO*RK#P/[R#I6S0E
MV4.R4!LA98V",>@7I-2YG"8%%D2FXEUH%E]/, 8]7=<DY0 !&MOP/<D(U0%+
MBGQ.WL@BX3FHUK(J>%&V"\:@7LT:).GAH#$2/Y#%@J78(S$K2DH%GLR65,<,
M8DZ73SUU9AT$8]#EJ0:'%KC0F(H_=LFL<&*9(*>@(-9AAG2C?4;F24HJ57HO
MWBD@*G$4A^F*+]PL^)"VI.IE^'EY6I*I<X5[>RO=KV'SK<JW-=[U@,;&O46P
M_@K.Z$<R5\;)2UI07-B\LSI^)1C0&+?I4:=R6)8SLO,<Q8#- ROG02 Y&D/U
M-J#;B /!TP%L<D0K(F3BX\DJ;G(7]HY5GJ1*SO,T>BIR9@Q^3,IX1X/SN*,W
M!&-LGB,%[0XAX\EZKD)U25?MZ#DN@Q&GU8KI=%_(_[7@"_QD]D>1Y>NTNSIS
MFY\7!J>@$[G+L6$_^AJJ#4]B^'4%6A.#X/ZCP1A;[*A\)A'*CB?!>Z4(/=O-
M,PE_C_*7315Z.N[*_/0L(3#]OYGZ>Z_16S 8C\:GH#MD(45*-FL!Q)-$OFZH
M@:?+I+:A!O*/32"ORU #:]M52Z$&)WXLO$U"#<8'X2 RP5UE@_?N#3_U9*:I
M%6IP<G#%4RBOJ\SM+2@78ZB!D9:UH0;-+219FE=F=_JO?9737['Z&+-BFM^F
M:S>69 *1/<K7*4^^(K<SB1:!MR3I-CQ4'8K2[T#Y?+ES\'1HULXZ6BU+25$@
M\9;U'(09Z"G+ T6ZR0PB>?E:YJ\[VWAQD:./YTH\(.=$LT]!O(,58\"3?/P^
M686+?*7E8N>Y$@>(EZL)%V(,>-*)_TY8O1XRF[R1-'PF-P63\W9^$.=N8&&Q
M[2H8=\>74@L;GJ3D$O'/HT7!HDDM;G98]A3T8=,NU^+-:@BHD>-)=VZJB;,P
MBZ8.OG+>#U4":$R2?_I5N!'E56?.@)LD3G8]D9LJU8;N.VT'P;#?'XQ!UNCZ
M'CIS5'CRK&_B7?1A9WM/TH$)ZD"UU+B8-B$F/*G4K^(W4GK-MD'U2H(.G@Y.
M0:-M'7$DAH4G;[H:9NVYD(Y&4,>B$_9,(.))BUZ'1#FX8>_T&#95@Q,*]0#Q
MY$3_C6HE8X$)="<57[PSD8LH>V&S!]U@DR?5_*EM&XQ.3P>PT6)."#4'BB>]
M^B8Q\B9CB,%.4]8D..E.P)\2 YXLZ_MBZHY^PN<#7\X%,UZ4JC9CYP,&GF3K
M^S*NK0P6Y*Q;!##F:X?T5(%H,JF#WL,6U"SHV!7L/D3PV$>,8?:82*JY\''P
M%&9DQ@(:Z9K)HQ/O"=5R%N5D;9"G R9*9O=DFCR7C.O*>?A^== ?8K.%<(K%
MWUT[VD!SI[SF_8]!AQ@5B([FUKB-ST%@6Q]@NP:@H$$B/II[X74C.?M]/_X[
MVU!.E>H%$CL,Y@38&)X5&06>99-I.><RG8MCM#0MJ#+\[ R;Q&F5! FI5,)
M<TU<)"7[,25$&B5DW)9B]608U@9R&;%@3IP %IK+X=XIA([X\LVE+OP+LA9/
M>3!CF]<D9CM=S=RI;$>QXDO/IYA!#<"@N9V])Z+VPQ,^3S%!!;Y:Z%QB!9$#
M0G.)VQE)6&9$]VQIX_HAJ@CK:R!K0S.-^Z!* /6E*;XCB1G$#AF>B]D2DXV>
M2E4["A(T@,N>/CT:/->7*S42M#0=/$O!@&;*LZ9&@@#3/>;=<J[Z '5A PH+
MU%5I38P*!J8+Q\UJ0O<'V"[\*PU78OE=72IV1$=9M>"\2.FP*:W^I;'SAGSG
M?U*?K4PZ"/J>ZJ'ZH\T0DZL[RYZIW+C(=UT^=7D5]T85@NTJ2%V250!=7:3V
MQCCWTS7X=G?;TQD+6\B./:LB2-ZN:#OET=6'J^B,#FML:0EK,JS"Y^TFN%.Z
M*R;9NE]NM0L6)7K2*2^K+3!OU\C=KK_->#WLH\3?M:VP%3(\M\X-C$FR?&PU
M,N5Y>%NITP[%O/C4 9X;]*K)[DL2O]%3(Q7R=OZ-LE5W-3CH)Q@.3C_#:4R#
M#L_=?.7,YX!F24>E)C[+"B&'Y^)Z?OI,8DK?H-<['?8X>>PW1K&4]X0EE*"_
MIW/1GLF.%75B4N?1TX)([K]X>4]YA01;)4T!]7[1X[FU7XYAAHC*3]<BEBB2
MF07I(*>_L#_BU>B.:64(>VNX3KQE39!X[NQ71O<]X1N:QZ3Y"&C0:ZFC#JT+
M+K#BN?-O,MO56$=<=E]JK4NG!9>@-1D(D%U.*A.)OY \FE)INW93:001-V-R
M0>9C*\K^&\93PFLJ-?SP9-U21: SP(X4L1E-D:*Y/53[SL3(S_II?6="SI)(
M8H=W)JRM)2WEO^X/\:6M+76_PY)4=$?7B;PG:>Z/,*7 YJH[U/"AQ(XN +6A
M7NAHV@9ZUH7+ IS V1;O*L[HE,:^2\U]@<.'R]VAG^@&QU.+ 0@TEW1V9;P)
ME_J[.;(F)3A/H93&%P442C=A20 'S>4;]UQ!SW"^2---?U81)A+3]'^2-+E+
M*.A'^AAY8+5H+J,W=F=_2D4*GTGE>/M XBA);Y*<9.<%>?Q.'UB5_[U,BE0:
M'NOE/5Q%1Z !1=I/3F"C]J8&-+> =K6RR<UX3U<;ON3,/J :?_"J3DIE=^C4
M6P.:YJX0J"7I2YB]7"Z2[UGG;$9' $'K3%OL_YG-[2U<E*9H.A:B*54K^\,D
MGNW^HO*D E^C?H,^;%(H&3GB[\<!5#1FHT982J_V53Q-29B1<U+^[[9<W,7[
M]"6,GPF;62[F<Z+,LM>N()0%=/Y#3P.NIF[0Y.4IA;J=5P6]C=>HS><GFVZ"
MOJ>*45Y&ASTR-(E^;DC.!+Q+D[>(;@C.5M\R0H?J912'\91EP9_FT1O5OE$]
M5?O.J%8[M.S4Q8<F4Y Y "<L!WU/%20-V:W+5U/V2]QHS)54XBDALVQ=7=;0
M^:]H1?&!7C-VRZL6*!H+9U72C2>4Q1YL[U ;TBEL2[&"7NOW1ZH"+AJ#:%5>
M+M\M%RJ[>"?I-,J4:7ZU;2E6T(0;_JA5P$63M^B>O(:KC:7$>/I5M.*7#TY
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
MWE''S7(6,"5$ L0E?%3P%8LM_JWVLDZ3;DLM0=_$,F!13+\3Z)(! A#/@'>
M8)GW(4>*-GD:0"C%UR0FJZ]A^B?)+XMXIA\+X@8<X3'('7FGG[*8>PUF"9L
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
M'R51_Y&OM F-BRUP&LR9$\!RD9>_(QQ"QXG[)E.;R-A%ZG\7Q1:P;6U$WX7
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
MY2SPC:I=0YY5)\'QN#\>PF;V:Y/7>LK!4W%,63%>M?E25IH_.?9CCFCQ\&8
M$$\1,F$M>=6.2%A[_N38TWQLG[=8KG3)SD8."$]9,6<L83FAN*=+>^0 L%]5
M@K>T1XV#9^D^#+3(A.+#$%,C08"GPM8ZX9%F?:H\10$ YLMWLQH=P,%3%&LM
MFG8VVWF.@H#.D7^@4J7FJV+C*3U56_=85I"Z)&BSW..YWL3/%/3L,7TAM['<
MA5JCEV#< S5?"3X-*P.E').+DE*.$MZNCX&:Y:;Z6##L]WJ#SGNOA) TA:4
MB-'.?7L'>8X$>NT1ZE9-PY[X$B( + C-B,"R$#5E1+L@65D%5/')I05Q$L^N
M8I;K,WHC3""U"4_;L$0!FH1>,M %-C=S-!(N6HHR>8SR!;F=7\6SZ"V:%>%"
M$1$H?)9.SWYR)[44':@ )6&F^?&^'C._1_G+/5GP?4GV$KT^)IK V1J]T!V2
M)[NX4<2A@@P#YDR@29*S-K<1X.84>@EK@US=\G9D97B0NA1I7]_3*">ISIVX
M]R ]-8!8V6I_*D(/H1"41-\0B6>VUXYGYT6ZS6I?7FBMK,G;K#K*_(+6G04G
M,(7.'=Z<KXE9,@0@:B]^&(>_A*]1'BY*X>])1M(WPB[L718YU<>F^(F9J=RL
M+[ZKZW<\F61]U))1L/DFVBNF=&#(N7AG/Q*86LY&5U G"RX!_>EVOG_)E!>&
MNU;49?+TIF",)ZV=M3V2"@]RX< K%S;&RU(!> HY35_(K&#[$#>:T188]_$^
MJE,_%@AED?(VAY(_K;F\>(WTWO6X[V?_9U?VW".%.V-&J@%'Y:.\WR0>>W*!
MU+NIS55WJ.%#B1V53&I#O="&AP9ZUMH3VE]"K^A>=TD^2J&NOUN-XT_1BNH"
M,%%$ZQ.6L4;0%*^12*IU9"G;48R>3%'&WD4M U;$56&A*>CBC3KH.=4WA[J)
M%Z2R=I;?SA_"!9%?1) ^2S&!QL 8?#0R0Y 0"9[J(&1!^WS^C<0D#1>3>#:9
M+:EZLYQ5-'DC:YN/GC&K?J@.0.Q[C=FL@=)%30XW5#/;(U74"Q7[G+R11?+*
M8[I+F;4$&[2F@$%OY]6FU1B;IFY%.\;98KD,T]7M?!T:,:4CCVVZ0<RRM9.-
MFUABFW<>C"'"=3_VXO7OJ)E;YAJ^@ZK(3]B\TAKGBEJ= <Z)<AP:W; F.QR/
M  -9?=&F-[2-I)8@?"D1QR-/.^!ZAK;107B#6.+.V#%')]"'P@9ZUL:E8G%!
MFM<AF<QF48GBP_>>39[87GOJI?B@R7NIKD'O^7E>-_VK#HT=N&GADG7P#EMN
M]BHTW1-&)3TF?J$;!H:\"!>/)%WZ+#!30QK*!^@AO(7!IACE$+I&8Q%OJH%*
MB2A##0P\COT:TE ^<.<1PCKV:^L:C4O!3<$J5@'U_96PA#"/"?N5O6+\UQMS
M(60P/L*=Y0?KE^*: @=^'%5IYR8J?GY.Z:DE)[L%515;]39>2[D%B2/WNU-O
M3W-X/%3NMFN[>%O:C^^]E'[-@%7.VA@YWG?=0HWB\;,Y+,#:6AUQZ3NI<@&+
M5P$/5W\*U3@2.S1:]?L<"0L>1W-MF2@Y@'5#NSO:&RI<\C5 N&[=??;WR6)Q
MF:3LC^U,W)474JY!DSS@-E.K="89BGCR3!FCK&R8RCKN'D?AP;OH=]UIX[)J
MB/@9E!(52L9C!_UYO]$'\VQ3Z=WC8-Q]$55C-Z="L)$HTI]D&$+Y[=SHT_NT
M>/ NJLQN&J7 !J-$A9+Q".5+\[IU]CY,344(QIZ*=7W:T6NG6<F@AG"2 >>
M&1^!IAT &&@U=209,@#7>QSJ;,\QMH%\ET93PO0Y;_-4;2@,);>;0[;M$[>5
M/B7#&\H+Y>9XI]) .V=TE01T*>KF0&XXU+R?ZO5*ET2B=]N%!33:#26@BL==
MG*Q3H]U*Z9+1CM$%)KUMLK<IVQI-? UZIX)0&KH9RPXS]CWH7O()8/1[Z=#O
M&@VAQK^Y%)0 D#"<3SKX;14O&?F;^0CR(O4=A1GG+R2/IN'BKUO5PI/BB94_
M5!)W2L<*2^E/!\CZPF?V4#S]0:;Y8W*9I',2L?RHLNA1H\94T&Z&^>^I6A #
M:H$?8?;*^O--B_?B/94N\WXO_G#$>%(.9#+*YJ/QHPJP.O7;SG,4^.>Z*"^O
MYB7 [>@N-^1V55[[V<N^5%%J>GSBR15LG$!.P+#K[:$.?W=NJW=C1$&G,$ S
MM!!F'MTFYOQPYVFS;DG;4(RX ^QJ3PGB<:)1A*.KU6UEVX&L5-S*)D**VM$]
M8/_I8$Y09=LYK)DKEMA1ML\VU N]5#70LVYQ@2IO9UUX<'SB)S86ST2DP>[M
MUB#B6G;C$T\._@;U"3D9!LR90/-VMPXWI]#S:1ODZB9>NRMC$KOT#2MU1:8%
MR^BK+E!X^&0P'H.$R-;^6 2F91DJ;U>CC+ZKK4BW\WDT592.E#],88 $>S@B
M1P=,<U6H79_:/<GR-&(AS_S$]HV^YJ],Q4JS_2E$G%>W/#)C/QL7[QZ94[GY
MRZUR(#,5@WED/-6+A3K#C*51&@+<:+QIG\)^?NII>U#7(S.NG["A-OZ_?'QN
M-0I]+$,SM)RFJ)8<W?9VG4P.DLZ3=,E*+&\WHO)J-O:=!*<P)>G]3P2"DV$-
MS:#QOM7>QY4UP*]B"KW@"KW-7TCZ^!+&4(G*FTE$OWW04EJ>-]202L65X-F+
M%NSSEWHY-_N0DPXKW%.YSZ';]M=4FQ\'#F37>7"U8)WE I9M63H@.F6OFZE/
MW']=W:(,30%1KHXGO<:>[!FTSF -+A,=5YV_VJ#9Q<&IM?NYK^OJH3))8!KU
M%;'HL('/YP8W-)%\+P>$N BD0;@O,\]=C%542@]\/@\LWPMNDCY!4G"MBFZ2
M^(UKR7-ZY%J"T"&#.Z@>J6E,KLM/D-E;BWY]WY;,?.:VM9<B..UU,UMC@^'6
M]L"7*/T3)!'70O>?SME2!#KU=?-$W*'Q+M+X)\A0;LZ OUR\MC)0Y7?3C=>A
MX2Y4^2=(A6YXD &=W'=%H*KOYLZ\0Z-=I'$7>=:QF'6D<S>D.'3#V,T\9,HC
M)[Q&-;G4T5R&^"O;F'9\G?:L/"]PV<9.^]WT<.^I6O I6^!'<YN@6W=;3GM^
M#J^^[[8(1HPGY?R(V<9.>WY\-T!W6TH>A8-%@/NOFP@.0[I/^YZ,P37OMG"&
M6[R P/'_E6W,K49QWFT!&%I.LXWAN=MR/.Z/A[BMC+7G L$NMYYRNI5Z[+3G
MAT\\.PHIZJZD'COM>[J&4"OU&%?=H88/)>Y*ZC$J+/2ZU4#/GR;UV&G_4^5
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
M45V2303,(:=$J'1'G=OR!>?'U5KQ4YX5!BLF=36'U-+(/X0(*][9/1&(L!K
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
M/'""8[G8B=&CZ^IJ:JKG)070%74<8ETE^1 WK"RJ"[?G)W7Y&5=$=O<7UAI
MPEL+E"'"M2AQ!W(^DD][4%&GPS XNK1IQ"$-K'3CTF/SL;BH.]7QT+#)6PI]
M8CA)R_,Z%@[1K'.L5Q2XCH*3Q,%3G+#3JA4-HU-'(HNWNZ *K1-TW%Q #P'M
M@3QDI3V*(6FZ#ME!0G$7'(*G1#4G&=0%)26OB2$7FXJHKND+__0*M9+OQ)+#
M$D<"+3U?)+CR@2;W.,3QZVBF=*M[09:>/K9\.5:&6M^-5*S5()=JX =U>+B9
MLX?'&C"!\CT9T.-"P)9 7'5H O'ZF!.(UD6=RE!'QB,5:S2H#P5 G;ILL&;$
M'@G0(-E#'R6DY&NVM.G5 ^5+7P-#HG0J^3/#Z#21B@Q+"@&$]&P0X ?T3*$Y
M\-CG.9%K[&2B:@;V7$&EG^G)0GL05S6RZ"PS]F3!1L^;+'T^(Q_:=D\1_.*6
M'I<&AP1:4((S[[BB',&W7F5XEO5UL>)6IZH_LY*!4O?9(4B8=R(]DLN8+KE<
M%P\H)0"<(9$$:(.DSUV.=T$<-1X*]3'].HV8L&MV4&I%*;,&06EFJ+,A]>K6
M6F<;"N&*CE5+_C!QI-Z-@LV6JD/20*@A+#]M$*WGK V<(7E\GJ7LY)Z&6SG?
M%V6VK:6S(J^B%5#&JK0SI&G3!(O2@YI&5A5)_>&HC::_I&0AEN#(W[E2BTH]
M ;60G)"]MOE:Q%^(W=!_W\?/+^7MYA="> F5QC7C*O>LO7Y2,C4#TK\B9JT@
MU@RZW2#2$ R?9M+VJ%C"%,N98MF&QAH!G.NF8+67ZQ42J%$6LO330D^Z^8;P
M\04?\V9]B-H9(-K3(+S,[9[,Z-2WD/RKRB38]PV0C?RWW9%?T.8TV^O#6&O3
M:< 7.]/5:92%:1MP>TXT6;FA04ED>GAC1CCX61F09; WB^E0#=-,1J,=76M;
ML>CAV/%AGOUN7MP _"$9KY/505GG9:QG>W1#[6Z]W7ZK(&=X1";!FX\1+11D
MLFG$RP@6 MB-B%SA59!!,RTE29]$S\)/(UB%C'_V$'7X!&>_VR4L4'204"&O
MDNSK9?4+DV 39M5=/L\QTX=[]=*I5E&/5D1-S26=LPT==>90C#Z"3K)BG[/<
M#^GQK7<;VC.-_,N$: -1[@V0!3X=DHZ^L:*)7G#T246N7C&7).K+)WPBAJJ_
M@]%!+>)5$.?H-4CV7,(CE@F)S#2;+.\^.F#A0M$C#E_2+,F>V3L%LF[Z%A3X
M IAP !=@Q.4#YZ>RRBY1D#ZL\TS0N8TPB^TEUUOJBJH"N7D33I\^&^O%/Q9^
M*M&Q[@JUM=&Q^@I5#< %"ABM7Y]9WZ]^^/2/J^^__Q$5]+5EH6);V'YPF-!/
MF&!EV3.G&7JB7K]F:4%6=7F;A.*H)NS3<#MF\N_$[6@YX:BVVGXV$7Y_2:/.
MUI2=*8FV?\8U71W.&FG!N5%7+^2:6HA5&Q[+.F;&9&V:N-1HS[09'-_!7>V8
MXZQW&.L89$:GL L.#]"A:OUHA<AQER5Q:!CJ4%')9>PPE>R2IT>TPYO2BMVE
MT_!4VB'@XE)I^]_AGBI^3N--'-)@U9Q8C_BM_)RH<]B:-N!R'V:J$[=#.U9$
M0L#1RHC5!GIM/EZU_78;Y >ZA-1H";IULT(CMZFS@J+#[5Y[?M0*86"EE;5<
M;NJ4TG/[N.-9V9$LGEAJ@W'@UO/Z07"'([J'_#W=0AZE,C+1FGH.L:330+AK
M9A50IX8'=GB"(C^3]2(ISLY2(=E@A*8A'XR@Y(X1-O84UHJ:V$[O#*:QF?3
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
M-DDOH*SG-+> 6@,^L4!3GJW!V3]9_FAX)HQ6A6E2TG^EI )LA@$#//'I!0S
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
M<3?EW)8O.!_JH0V6K*SE<#I12\_EFJ6E10, &DYYC ZQ/"JDR]G- #S#N<P
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
M6Q55)9>A@52R<S><M#!J2],AJ%\ET I P8!L%#B*?JL4W6D@("UZN A 6NC
M.4"$.<V/WL8DK4[;+1P?)/4!'1YD&ADX.E155VV0H&O)#<K2\^U4U1KY?;@!
ML@*<SGM!B39W)'HHL_#/U^S.X&*?Q^GS'<[C+'IX"8@\Q\W][:;WZ"DD16DL
M&@6[IC;LD':3^X +6$(;1%6+J&H256VN4-5JS_F5S&7]UW9-TU!DG;U#3)1%
MO5[[WZA@7X.9V>$[ -+.S6,3A@9P'H, ;AF9M^<"AM&T77B[:-P#-F:1-0ID
M%:>8A-&=,<8D@OM*S\()0\-@1P@/[@W/@SP_5,X\>[HW>GS!^J/!65KUX1;1
M2'O+]T%UD[5K#N4)]/'A,MUP.3A,HII6MXKTFC$"/B68 ?#F#XF,T>[#0XM'
MG%N$51#4].(Q1:.%W?,)Q*KY<*5OHDLK>MX>PY4B^?UX%-'#E?DSB!ZHIOB.
M#9XX-<YM]YCF-27LE#J4Z2LZ\S(ST$$7FZ/C%HK:>@!1?\;H<G5T*:2S2=X4
M;>85MM*$FEGL4-9W:W,*,3-?M[%0BX]0ZWB 'L?*![^XSDL0MBJ7Y%^WJ>S#
MZZ6N+A8/EU;U?E62OQUB]EM<*2\>,7'8,WZ_Q '/%R9)4\K;5?>&3=+LZ$;0
MDZ2D]X%1BRCF#ZOZ.+3C51^$8&<PO4VC^2'+H!K<*<I0_B'0^D'O5^BG/"O
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
M,D6G>>>(9<_,49Y6]K1TZ:Q0E+>;AR#!A?;X7E#6J;,!+RE_KTYX2\.HT5+
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
M?,GJM:<@KKQ3MQ"Q(._"[T/2QW!;LU:@)O9GY\W-2:>)F&LHWDOZB$GT=^>
MH>+^>S"R]4,D'"T9ZGV,%._"O(IZ%\ZVMM(<'RK/9T1_K/HZ94N3Y<(&S=+E
M;9GOR)8FSLE_PX!8NR3Q_'7R_"QW9TBE%'\/5G3Y;!G6(KP+^^DBPX:A\1R&
M>'AORT]M5[-FWJN!7#@MQTCVO@?36!UL@)K&H0COPC1R_0IG&NNSJW>\J-1V
M=E7@?=I&,8/=V48Q?4_IFE.:K A6G'=[7:E.8J3SI/T\FR?MNGN:_UA[TD*D
M-/)L&/[S3M'05,#>&RY@)_R\&SPQ>S%AZB-*;..2R4$^1KWU8Z)&&L:X>*3)
M V1SE+Z>J\G$0(/A*':J,)O3JX1^9=4@(D2Y4L69M31%5\^L.866D?UQ,2X3
M.+PFGXF8S7N+17$21(5<L7,H&W>(U/P=_4I+0+!NJHC.V"0<YQYUEAMD(YY,
MZ<DY\'^1T6=G6@8TQ9QSH)5/T3%5&5 >3!#3/1?Z8RYFPP(#;L>'D3VZS+KN
M)D[Q-=E/2:<*L[H>K.^ZFEA.P+0J8G4]6^@MHY,/*SX.=Z:KOF5 -W7E-_]
MN;O=N<G29_H:^XYTV@O9I![E76^S?:IZMJROZO VQ4"/X=#0*F<E#6[75$+'
M6BM4U9O=)+SB_"G3W^:.T*<^72A8J.#@-7[.Z+T+H6J*0W8R\34N7U#Y$A=H
MEV?/>;!=H:\O<?B"Z E%CL.,7N+2VD0O3*C^PA ;T4BGV8Y-3?1(+BU@\XB;
M(G9X"V$*URFQLG^ZN=[N@K!<:R)E<^6<Q<GF)>3B'_]T@ZHR:"V-TNLNNK2D
M2_NQI9?L3[/(TG;].FM4Z1EM_N?#>5#BYRP_W&[HK-24B"3G"9-;]&*&T&G-
MS>EU:>I_3LNW\T<$>"XPT^":6TVCD?4!U!(QI4<$DUOT M0ZK2U70RK, YX
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
M\LN%$\?V=\VQ:G9HBU=LY*/@@^X5>'Y<HQE*\&PO#((OSPH<5OQ%BT<02YN
M=I<6A[Z5YD48QM^)X8X7@.('^#_7Q]ZT(/!JX"K^:%7X"WRD0NE==.4GR0I;
M..NM:G/L*H%-L\?Z#IGF8];HK+[A6IHP97^AZF:]));QOVF7-S_>\5F'Z._Z
M;Y$%;DK^0-6E?+) TSS$>GL7$>]<G 1E)KJTFXI#Q-ON.SZZKYY"XHV+IN1T
M_$Y,%_-A*KNJR<5B:Z\HT[TU!<&+<Y*CZ7W@OP4A_KUJ>B+NK1:/D3T&3#NO
M!4[A;Z_16[DHIWZWUMUCEM@P[-@&C$L_15/B[\+K<W&I+CEX57>V#/7'=]+Y
MQ20+/K"4*MC?_([J&>9>>I&U,7-[M7<@2K,DF-"D(TSOMRC(+ A=H]<3 +!%
MA^E/U)=&8&U3*/<+5HXT=Y'2&U_V;&/0M3U'OR5.='NT-6_P+SVC+$\BXML/
MXBD^[K[]"TVRU_CFA[\,(OJCEZM;A/<J/Z09B>P @Q+V;WZ(N[C(LP4VG4O:
M5K6/Q7+\Q!+51MU:AD"BW'BBA\':I8CW\V!"'%-!F),%CGR3XC,<<6I41U;F
MUVI*D;'$7:GN+4?+;!FC)MU:AH 59$)\^7-$ME?J"[U<?4'Q//'?%UA%$N2S
M7ZX4%#3YE?H!VG.:6_@QR^E5ME32I%L* >_N*8%._N$>CW@/"_J1H6B*IALT
MY#>,+OC0&U;Q9*_3D-QIBI-]"9$^4]PIO;F4HLG?YO''[U,4_-[K=,?D#[^1
M/_S6Z:[O+?U7_%<>_9V+MY2Z_S?]A?X;"NFO>$??>-W1<#@^7T.O;V 76+NF
M1,-N0W\N&-C>-V1@H^Z8P\E%LC](/YEL.L1_/")D_^;7^HO?WZF5_=MD$81;
M+F=8P55B6O]PK!IUGN)1Q.],TW[])4ZPG?&/7[N__H*1L'C-/0,O'"D=)I50
M[>1L+A6^XGX%W!0_\0;G@WYGX#XUW$'SF>FYS<QMD.+3X'\@/[G%?Y,J2#KX
MFBIE;]0<OD3CYU/7;P)U[!2B3U[A>P:_ 2NA&@&?P(&;!-Y$69"MKA")I6-C
M88I^_%]H)2"/^RV%/3ASGSCYZ/FDG;E)VE6>)'LKR T^&N+CE<@6$GQ.P9_U
MW*=."8#/WKF;[&U6$+9VR*GC?LMV^;[[O,E'SR=MZ"9IZ]6#*>+V $E<:L*]
M3M:$":$YJZ8<!)_)D<M,4B<H\4%](*R4_AJ@E$E^$R:$!A@N6B#X3(Y=9O(V
M"-%#3LJ]2-G;?4; COL-.-D)!RXX=W=<IND9S0.".,H>_*5HN^-]RG1SV!2Z
M!(,74.:HKV2G><D5WK+G<2(_$^Q]23&?-69OXX]=P)>C'I37Q"=UMEY6R[<X
M%#"U]PW%V6V "<D?M8 =1YTD+VB2)UC3NKVWUR +18O?X6<,;0..9\*!"VAR
MU!6R@7'S8T*S(B3[%.]3AKH!9H5T\ +*''6$;&Q:$H>*$RILFN5P12+CR>HJ
MGLHM#6E+)I/&[&-Z6 3\.NHJ8<A>_1]W4RPK&I,E(]<P]P5MF!S.F\*I"H6
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
MJKE ;)7-<XIBY3XM:.$-73E]EZ*V *(-)?4,GPG2:>8-7?$TER+X$$EMI?-
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
ME:^VN:#5GJ+K 4\P#>'SIYH91%"?MN!X5S1IZ-@W6TF>9O$2_Y*2[C+=4)%
M.[Z-6:^$%-Q3;B'[/XZH>/X(LL4&+K4_"K;N2GMY*-$;$R;PL;/T8E$%<%W.
M_-.]VH:'&&3DA0P$% +>C4#G1;:CCZE_;@ 0!E[K6XKM&A1\$-%=A&'\W8\F
M"-MTNX%J3[QR'5+\T$4I);3PYUQ%K(V_F_HECJ??@S#$2\SAF=%T%@H,B,(O
MT!=Q#G]&JV)YR9Z\?K?3&3;HNFJ_-^IU@;SA566LE;RQ 0AYB_5$F1L4JBN)
MJ_O25V=O; 8/>1VU]M0-"M*AY(V-T!7I&YMA?^Y;I50*KKAL9=-+ T/#;Y5N
M3[R;W</,:W_4BFTIKG![3)?*(2\&5-_=4CL^GD((@5J$4S03!Q5,/3\5.J<"
M'+D7#.1K1 VX+25]E%4<.PN%)$!UL22%@/Y-*;WY\8ZB5-^/7*5;)F#WXC?R
MI<8*8DOI*9#WW*_B*(W#8$KJLUWZ(3FUORP0RJY1Y@<AC!N)4\I*PY\D:44(
MZ_:&S3K$G@.G=.G(4_O >OYY#JR.U;S=2%_OP&JQ[JV[!U:HPJDRH6L<6,7U
M4C_3@?7<E4.-;'II8&C+@?4N(D6 XF1UE2?)1BQFIU=Y%VRS<>\6ZH9(U5%6
M$QWPN=:.6CPE\3M*LM532*[H1U/RI/L[G2P:"J%N3(7ES"TC754PP-6*,VHQ
MK7*2Y*B8I%MB=5!UPH3GYOE39WW0QM>.TR;^^8R<M5]0%,0)><4:*%GA&KUE
M1F\]\QMXW7Z_02?+;G\ G& @%:/6@9)A^#37U_M]MT*@3/SJ\R0;.'A2W@E>
M48&Z8R.6NN(XR8;<@NOKU5]1@2H]8#"YE.-OP7WU@F5 -@B3%%=Q.R)-]PQ#
MQAF?8ATXS7\;A=3W7L0A'G=*#D/KE-R36X#LMW5>=][[T.OVMO5GFV#Q]: O
MAW/%IV?I]<2WP$]HZ5G(,/[N)]-7_"N*XBI[WY%W-<]ZKK@[BHSPR>,/OMG/
M,6S>'D?3JWA)8L%K^2=^-&=EY2Y7NV^>_!7Y.RJ(G32B*7']//A+=>F5.GZ.
M,0%]$XBK&X)%H$XA?.X("IZ^KI64$*\GPO&WP-[=^?]NEN]AO$+H!24? <F^
MX"I_2,>RO@&Y*8SPA)(@QM^EFN]0U/6;A!97HMZ'NJ)RO]8C"M 24K8UE"\3
M:L4_4HCIQ20+/DQN)E;OG C:%;^8J<Y5Q-R"FL8J63PC?%@()AF:4JE\BX(L
M93N\;4TS_"5"@2L>(SMJ5TX +2B8/,F7.7V7EE[3(B))T )+)?A V_N*S?%)
M],^:Y)/H0S]1QQ6?9O1)_!Y=&Z-/X&]_\L2O$WT2/_79KN@3U,. 8JDKHT_B
M=P _6?3)L:=7>9-+.?Y6G<:E9L$=MB&6R*@21,6>B8@=/%GWQ6^XV@'<^!@7
MP_?J_X!*;]H.P"C'2=(*&_Y;4Z ))F8/^L%<M2PU8V#BW;*%]F;/M2VQ=_P2
MKGC@G\#>[$%M2&*IJ^S-GGA+^5SV9@_ZV*TQN93C;X.]N7E=>KM'W/SPET%$
MZ=!\4URK!RRR<U<2" YY%-!N!*SQ=N*-GT1!-$^?4$+=LT!>QX-1D.<W)SI.
M2%D[^HQ\_ZPY)N-9I],; 3^,J2=1+<-Q ^<3W+NF4%V)!NY+7VTY;@;?ZGO7
M%*1#A<(V0E>8CIMA?^ZL(2*%L5OOB_.GEP:&MMR[_@,%\T6&IA<?*/'GZ"$G
M#R>M8[QEW),&_=%MR,%W9384JQR39: VWM!\07,BK6?T3JH;1?,F/A(\Z(S[
MVT2S!AB49+QCYQX*WDA1RXC<0( T(JW<+IH@4AJ>)KP$Z9^7JTL\01;XI/FG
M(B-?U91)R*VB)!O2^ QK(VIVYOXQS U(91:^JBF3$'!<3IM&72T08&RXZ>OC
M76[]C,@#RH2O:TJ_9[( /E]J$R98UZ7 +%G%Z[J<N)<O>3 EQ02;=]C!(AET
MW(I!R==S"09+5BOX84?P#M#E:FO.KLW;,B>?LITS*;L24#DF7W4,JHR[5=6*
MTL?9W@J+Y4/W5/*_M]ALCA,3K3+HC8G3%0/25(W* &U\[OBM'R3_],,<?44^
M2>N@]P^GTX A*KP R:KHGOJ0O1W>+O%$YT$F63.OUS4J<B0JD[X)[KT$\RB8
M!1-2$>WHL2_1*=NT"Z_7![;1U2+=GUWE$'Z6W*!>#R@X5XX6=>2' FI_RE!O
MX%#&4.^X;C5_P&W(%\K?4O17CB5T0VJ0:M2?$+3P>E!/0MJ8>EK@6I%5=(1/
M77!"U 9+!?IH(Z-+F^$B&O=N9:=)5N 7_]<AM_BOO/WSF6 &\S_$RQV0V\K&
MQ)5A<N\2M!:7I"+)XVP/E'".2K_'4@!*IY"Q<LR? D!=9\$3+KOE:COU>D )
M%39W5 XD/J&C)A':AII//>B*V!S5$.S9M<'GJ^*X2:IXO1[HVE=;D(K&@J-N
MC'EI@5VOBU/@)^FT1R&4:XU.<RPLZ*>G- DMHPY%C *%@*PLJ65$/A- DG/
M]M_QK&FPE<&!(F#LA-ZR"HP)DP\.OL!0@9(K.1(74%(<J8 42%>9%BFO0<8>
MZ)D&'\$T]T/)E.)^B^$WV".M@"5@%=(C5H[5/X)L\8Q"=H%L$;R_Q@H'=HE>
ML,B _"P*%C4HUT$F4(9&%30D!=7OHC1+<GJ"4-G.AQ]CDP%H5;9K*_-Q"0AN
M5%'!?6Q:9V]1$RP4X/.SB"@=6@]Q",@]D9=-D OPGRB)G^( 6^7X,_1"C/7;
MX ,]H81DD_ASQ'\LZCI'K]_Q!ROVO[=QG@CMJEI^QQN,Q_TSX&NB<KXY206U
M24&@6\8./]@LL(OIO_(TH]ZF6PP=?2\LK4D<X3].F"]*Y>,UZ<?K=1L<G*D
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
M%'Z1E2L&MC2,-;%N8=184PLD%/@M\O,IGK/3E_S]/:2B]D/.,]+MB0F>#<\
MC ;(MV5&CB2BBND0&!ZED'Z:MV6&P*EQY>C9IUH([!.\+3,"VEN%,C^FYGC
M/]^6*;[;,80VCRQ,02V0/]^643T;,70OJWY'7UF''$75TK=E.@X2QI$^Q]LF
M0V0I-N:.ZUS'RR9/&1TV[@T^HT7Z *FEH)AC*W6Z.9(^HP\4Y3H7IB6ML82=
M3M ?"C,LM<%9"J&YX4OCH7U V1V)$*/[.#5<&_A]8+DY77RAG%)P(+;@T1@.
MX@W@&S^)@FB>/J'D98'%?NFGP<1,/Z1=81FZ%ZDKJR8:2-OPP(P!\NL@S+.=
M1[6:PJP[PX)TS]:TK3)[6&W%!>&NR[SDRZ6?K!YGUT'JS^<)N5V&NW^<8?S3
M?)*M-]OT%LOZ*HZH+S/](\@6F[S532;T^GLB;A@?^KIV">;J*0Z#"0EOJ#WH
MXD9>OS,>;Q]1.66Z[ $1:P94[G)9,X8%V!34$#5_<FHA<^KN39ID!;[Q?QUR
MC?_*6T^8Q^0%)1_!! E\<Z)/&7)@2TZ+FGU6E7B<NC!CPB1YHFH-*!5ZVJ3?
M,QD F5U*8H0\2H T^_[*&I\R87GO.X8=R!#28X6_SO)16/*(%^7P)0^F?C1!
MIR?T.5[Y8;92$KKW'1,%4 2D"J%\%);<W%,T(TE0H'0*MA\=5ZJJ*1,7L$>U
MQ/9JC _XD79+\YJA*QY2BF>4NV@2YB1=ER1#X?\C%9%DL]^\-RI.Z/P3;<X%
MRT4%V'5YXT]V#BZ ?PGF43 +)GZ4;0^Y[3G2G@&4B<#J-$%$HVB:8I#^J3K,
M\ANP\0-G VF(ES^]%)@L'6"MKL-:IQ]VYVTS422GV.,/*?ASX N\"EZ.3ST2
M',T[NY)[BH^S/4C2LZOP>R8#H(NY"EJ..53#@#JYBA)!5EGPX2LR0 K?,!R
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
M=PJF%8A:X,C?0OTC3OZ\BYZ2>()2<^K%K;&D@".*);E706J!^WV+E1R34GR
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
M]D>2SOU,R.IJ,R_I@\BM\5-?C4^0#=2H%&@-S$]),$$5]8+U0>360%/ %)]
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
MM(=X?2>A/ITU'0.FS>4LCGIUN9RP;#TX!*[CU)6H4D+Z$0;>6"^J"(VMIWW
M::RPBF\\@>G=VL)X);7:[J(L":(TF*C>B#[%SV.RFN^9/9F<VO"J4%5I?<$?
M9EM1_8&(5P%-+SY0XL\1_<=K/T,Z;Z"?>"28PL;[F4%$!OMD$O"I?"VX?U([
M92.XK8"4[J(:?A*3T@[/>6VR:<.C4.6]&BJK^V(^3VAQX/T=CHFT%J=3I1%A
M2C^O_]Z&Z&P]: 4^&VHY@SI@SM@>(Z;]\\86ZA%F;<^!M6(.[>_&]/0$.V%D
M \*$MB/D 20YP51H5(QN6ZX*)1_!!/'%N?5.4LFE5!;%?R=%J#%W_X&R9S2)
MYQ%YMD.B[;7]IC?J-#Y>4K-P!#K;J)A>;2):GZ'B9/U7Y#O9N?:T \$$-CZ"
M B$Q@<H#WRRI>.R_B(R#2H\SEJ$KO*L"-R1,5&,O0;@A.X&2-RI66$@2OO+?
M SSK&<)GK!')!R*S^S;/,!^;O&*]VS9Z?=&+:-W&V\/E<0LTR#A,"?NR7NGS
MP/ZDNOCP@Y#<></RHB?A.@YOBI_$AXS&+HJGD8U 9:L'(4_[>-21?&Y^D#^B
MGT]&%5\R&G4[ ,O)9(&F.7F'0,MRO0CI6/"?'F>'MBG%IWPFO8[?PZ(#OC!N
M@WK! E.?P#[+NU>C+O1[DO5QN*\T0O3M?RIK!%6R12CS8VJ.!^S>4UG&.\@=
MWO&7:/> YEIU%15W)*VP]* ?^CW5?-66AGMO<-G2$V4]'VD[+!W@HKM*ZHP8
M+Z("?6O+EL,CS? 1QP^1N-J^\%LL!>#::AHDB9P47"PM>)*+N%FP$!<7T?0:
M?: P?J=UQ-EY3LFQ1FLL*>"W5$JSKHVN#>]YH1#W.?^"(I3X(49\,5T&44#.
M,Z3^U1JT>M8;]8.E!^2_K*P;)7!:>FIKBF8!"Q=]R8,I\RH[&=!4FE'WDF)D
M-?T29@+ZK893VZ*U2!#T53"WBJ&,ND IW;42;.(=9R*H[6VPT_FV\^723U:/
MLW7]QPE>R<GY_J=7N^C:[(\AO=K*^(SP42Q]3W;%W_!& ^ ]Q@;%*N^U%2%]
M&H_U /HM.;N\:7BI!^(2U0[3:^RE'@"Y-(0R5WFI!^+"4<VWWC3B]#J'CNJ=
M8SD[X_.N8<;;%E0+W.$6R\8\QV%X&R?D'VN\@LW_0<P'<.C=EDY9UE@-J;7
MP=_LZE.C,^C$@!JUJW9]+@K14F3CG=59SOPD:ZA"[U\YK%&;]W\(L]#491A,
ME7D2;$-D!KC^^^@,V+\)H(DEI50UPC-FVA;1J@#3AJZ8T"8 <+2Y>>NF0(B6
M0CS,!+B)FJK.ZRE.3L*UJ_/1;V$F@ /DS5-G@1!K"T\U2)=9A0!R=>_'.YK@
M/[[&Y*].N6+K#L$;G4.[S!NG^6:R%4R(SU%;Z)BC@VHR&\N.ED4E_,U.Z9#3
M' Q6IJ;:YJ=VUAE)5# U/D?)(#/9P<\'O)I!IW0!J2GHI&%B%\P4XU!B QR%
MPBB93G$R:W/&WB@P@= ARF;-&]NB%\R==D4]54([*N --7&,!H()!+ZFU+*Y
M4T+Z@NGS6<.MSAMI[8EG-<I($]<%*!G-;84K%VBV:(X T];4<[V3L\5([(+9
MTJR8<46!74RG 1/ +I5<YVY!K;^+-:2I1M=)O%T:PA/H=O,>P7E3B^G->&EZ
M1B1%&O_]51Q1H>5^^(J294^E\:<=#::RX3%N#4V53!$(:0LF3O,N/%80GG@7
M%0FOSB=V2HP&4]GP:#K8Q"DM;<$5H.:%W2L(3QV7=6 ^V1ND-SIK>.@>;)K9
M)D$P^TX4XY=5$J_"#O_=),GQY!0_B]6BJ9</I*>3T\E.H*R?->I^LK=FA;^)
MUQ#0]QM.H72UNV=Y(A5H>O,NX-JQ*/=%=*)#P\&/8F) :Y<#ZWJ-,A4H>[O"
MW)4S,P4$@F;B"L:$:05]\KZYVT)%D0MF4O6(-W2%I2?*^@)EP00?N7Z66RK6
MXCG_66Y)59]B")S'9H-BP8)C5TC@Y9:JJR:#A']%48]\[SN,'MHC99=(OK9P
M,(-78(),,=S)(YH^A7[TX"^1LCQY'3^'N0#V#7%4PW8FGPI^"XI.;2MM[JZ
M*PLB"]M@J;@>C2K--5^W%*( +P)UJF* 0^C[*G5N1D+$X-61ZB\&.'2I&."0
M6Z?Q>,#N/6*0)EEA3<;_=4@._BOO-<B(!M_A8_-',,W]4# #A=]B]- IR77.
M0P5N]PKCE&/]CR!;T',6\:\L@O?76#%K2_2")0:4CJL@48-Q'626'B:P&B1^
M((]*HDE.'E,0VEB"+[W1".BX5YH"3LQ5A,N]TOM:,W>+Y7$V"R8H$9(J_ACC
M![*<+/&J@O:I:Y3<GZ@P[Q ZB?P4KB!;@H(M$B+8&YY0,B'$S3<R3%_RMW^A
M2?8:W\;)# 7DN7#1=J'5&(-O:HKU 8&<C<5  K45PCA]Q.D9I5D2D* ;=3]\
MBX+LYP,?W'#$J/\SXJ18>$? U_-L4%Q[Q&DDODS7)(.F9,1I!)T-:I=(K8C3
MR(67J7]&G.CI8PSL9.:HQBDC3F/A<>I$$2>![7I@AI"1HV06)TORD./6,A&_
MLVG>B3?N0)]X:F.88]V6D UXX.D3G+K'[4G $&^'M@0%'BH#5,B;OW)\)+N+
M\"S.*1N/V0(EKPL_6B=1/L31!\VC?*[WF9Q2 \':X7I07U,'+6MX!6FZ%Z!T
M<3;45[G9= Q8?X#BX)!:"C9?BD*W%-5M0#7.TG*K_T$?PR%@YIKJ:V[0=.')
M'#3N[?H\87=50.?)_A P9TTUK1HT3W@RKYIQT.QGC90B6P?-@"?+T2B\<0?Z
MS/T)YHM [)4S.5H^9UP\MHP[T'G9GV"^<(5N*\ND?(%:VZ5J-/?9HZO PND
M.1Q,4E-?"I ZM>!E^JD?FE$*\.15:*N-""^H3?5[ ?M^-<1JZZ&9=LX4\P)Q
MM<3[ZA@GUDC7P]=UZOVIIV)IAF!?LW'%?C,7GS.VGOG0,?'026[N3,UFD=::
MQW/>U,)^,R??N,(H^)BP2C8UBJ1O?,()UM83.I]JOA06)Y>F3&%86..@[X##
MZK4CD^V($MA'>!RT)O7K0[HZ5$RL"X]:N3+7W*:IMH>"G+KX][/NI*AC;]PY
M [!0&G4+<-P!MKAM4"PP .P*Z=/> AQWH+<\NT3RM86#^><M0"=N 8Z[P"E
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
M_TX&_N:GZ+___U!+ 0(4 Q0    ( &N&95$4$WK1%*H! &K<&0 /
M      "  0    !D.30U-S8S9#$P<2YH=&U02P$"% ,4    " !KAF517ZE(
M>!4(  #=*0  $0              @ %!J@$ 9#DT-3<V,V1E>#,Q,2YH=&U0
M2P$"% ,4    " !KAF51J+^P:2((  #Y*0  $0              @ &%L@$
M9#DT-3<V,V1E>#,Q,BYH=&U02P$"% ,4    " !KAF51[X#Y%WX%  #_&0
M$0              @ '6N@$ 9#DT-3<V,V1E>#,R,2YH=&U02P$"% ,4
M" !KAF51_ UQ30$3  "0S@  $0              @ &#P $ <F=E;BTR,#(P
M,#DS,"YX<V102P$"% ,4    " !KAF51?-C]+\P.  !CUP  %0
M    @ &STP$ <F=E;BTR,#(P,#DS,%]C86PN>&UL4$L! A0#%     @ :X9E
M4>ADQXO@;P  \HL' !4              ( !LN(! ')G96XM,C R,# Y,S!?
M9&5F+GAM;%!+ 0(4 Q0    ( &N&95%JE$1V6((  "KX!P 5
M  "  <52 @!R9V5N+3(P,C P.3,P7VQA8BYX;6Q02P$"% ,4    " !KAF51
M JV!)NUU  #;)0@ %0              @ %0U0( <F=E;BTR,#(P,#DS,%]P
<<F4N>&UL4$L%!@     )  D 10(  '!+ P    $!

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