<SEC-DOCUMENT>0001443669-25-000011.txt : 20251031
<SEC-HEADER>0001443669-25-000011.hdr.sgml : 20251031
<ACCEPTANCE-DATETIME>20251031061027
ACCESSION NUMBER:		0001443669-25-000011
CONFORMED SUBMISSION TYPE:	8-K
PUBLIC DOCUMENT COUNT:		15
CONFORMED PERIOD OF REPORT:	20251031
ITEM INFORMATION:		Results of Operations and Financial Condition
ITEM INFORMATION:		Financial Statements and Exhibits
FILED AS OF DATE:		20251031
DATE AS OF CHANGE:		20251031

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			Proto Labs Inc
		CENTRAL INDEX KEY:			0001443669
		STANDARD INDUSTRIAL CLASSIFICATION:	FABRICATED STRUCTURAL METAL PRODUCTS [3440]
		ORGANIZATION NAME:           	04 Manufacturing
		EIN:				000000000
		STATE OF INCORPORATION:			MN
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		8-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-35435
		FILM NUMBER:		251437830

	BUSINESS ADDRESS:	
		STREET 1:		5540 Pioneer Creek
		CITY:			Maple Plain
		STATE:			MN
		ZIP:			55359
		BUSINESS PHONE:		763-479-7474

	MAIL ADDRESS:	
		STREET 1:		5540 Pioneer Creek
		CITY:			Maple Plain
		STATE:			MN
		ZIP:			55359
</SEC-HEADER>
<DOCUMENT>
<TYPE>8-K
<SEQUENCE>1
<FILENAME>prlb-20251031.htm
<DESCRIPTION>8-K
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:74a164a7-7862-48b2-a067-29aa23e6f98a,g:7fd720db-9a8d-4aca-a883-236a5718004e,d:06c2c9c552984078898697d48e541b56-->
<html xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns="http://www.w3.org/1999/xhtml" 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:dei="http://xbrl.sec.gov/dei/2025" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>prlb-20251031</title></head><body><div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="c-1" name="dei:EntityCentralIndexKey" id="f-21">0001443669</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:AmendmentFlag" format="ixt:fixed-false" id="f-22">FALSE</ix:nonNumeric></ix:hidden><ix:references xml:lang="en-US"><link:schemaRef xlink:type="simple" xlink:href="prlb-20251031.xsd"/></ix:references><ix:resources><xbrli:context id="c-1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001443669</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2025-10-31</xbrli:startDate><xbrli:endDate>2025-10-31</xbrli:endDate></xbrli:period></xbrli:context></ix:resources></ix:header></div><div id="i06c2c9c552984078898697d48e541b56_1"></div><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr style="height:3pt"><td colspan="3" style="border-bottom:3pt double #000;padding:0 1pt"/></tr></table></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">UNITED STATES</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">SECURITIES AND EXCHANGE COMMISSION</span></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Washington, D.C. 20549</span></div><div style="margin-top:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:18pt;font-weight:700;line-height:120%">FORM <ix:nonNumeric contextRef="c-1" name="dei:DocumentType" id="f-1">8-K</ix:nonNumeric></span></div><div style="margin-top:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">CURRENT REPORT</span></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">PURSUANT TO SECTION 13 OR 15(d) OF</span></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">THE SECURITIES EXCHANGE ACT OF 1934</span></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Date of Report (Date of earliest event reported): <ix:nonNumeric contextRef="c-1" name="dei:DocumentPeriodEndDate" format="ixt:date-monthname-day-year-en" id="f-2">October 31, 2025</ix:nonNumeric></span></div><div style="margin-top:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:18pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:EntityRegistrantName" id="f-3">Proto Labs, Inc.</ix:nonNumeric></span></div><div style="margin-top:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(Exact name of registrant as specified in its charter)</span></div><div style="margin-top:20pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.848%"><tr><td style="width:1.0%"/><td style="width:31.828%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.406%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:31.828%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.406%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:31.832%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen" id="f-4">Minnesota</ix:nonNumeric></span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:EntityFileNumber" id="f-5">001-35435</ix:nonNumeric></span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:EntityTaxIdentificationNumber" id="f-6">41-1939628</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(State or other jurisdiction<br/>of incorporation)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(Commission File Number)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(IRS Employer<br/>Identification Number)</span></td></tr></table></div><div style="margin-top:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:48.596%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.406%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:48.598%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:EntityAddressAddressLine1" id="f-7">5540 Pioneer Creek Drive</ix:nonNumeric></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:EntityAddressCityOrTown" id="f-8">Maple Plain</ix:nonNumeric>, <ix:nonNumeric contextRef="c-1" name="dei:EntityAddressStateOrProvince" format="ixt-sec:stateprovnameen" id="f-9">Minnesota</ix:nonNumeric></span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:EntityAddressPostalZipCode" id="f-10">55359</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(Address of principal executive offices)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(Zip Code)</span></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Registrant&#8217;s telephone number, including area code:</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:CityAreaCode" id="f-11">(763)</ix:nonNumeric> <ix:nonNumeric contextRef="c-1" name="dei:LocalPhoneNumber" id="f-12">479-3680</ix:nonNumeric></span></div></td></tr></table></div><div style="margin-top:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Not Applicable</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(Former name or former address, if changed since last report)</span></td></tr></table></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Check the appropriate box below if the Form 8-K filing is intended to simultaneously satisfy the filing obligation of the registrant under any of the following provisions:</span></div><div style="margin-top:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:0.1%"/><td style="width:1.769%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.678%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:94.053%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:WrittenCommunications" format="ixt-sec:boolballotbox" id="f-13">&#9744;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Written communications pursuant to Rule 425 under the Securities Act (17 CFR 230.425)</span></td></tr><tr style="height:8pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:SolicitingMaterial" format="ixt-sec:boolballotbox" id="f-14">&#9744;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Soliciting material pursuant to Rule 14a-12 under the Exchange Act (17 CFR 240.14a-12)</span></td></tr><tr style="height:8pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:PreCommencementTenderOffer" format="ixt-sec:boolballotbox" id="f-15">&#9744;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act (17 CFR 240.14d-2(b))</span></td></tr><tr style="height:8pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:PreCommencementIssuerTenderOffer" format="ixt-sec:boolballotbox" id="f-16">&#9744;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act (17 CFR 240.13e-4(c))</span></td></tr></table></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Securities registered pursuant to Section 12(b) of the Act:</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:38.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.051%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:38.749%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Title of each class</span></td><td colspan="3" style="border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Trading Symbol(s)</span></td><td colspan="3" style="border-left:1pt solid #000;border-right:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Name of each exchange on which registered</span></td></tr><tr><td colspan="3" style="border-bottom:1pt solid #000;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:Security12bTitle" id="f-17">Common Stock, Par Value $0.001 Per Share</ix:nonNumeric></span></td><td colspan="3" style="border-bottom:1pt solid #000;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:TradingSymbol" id="f-18">PRLB</ix:nonNumeric></span></td><td colspan="3" style="border-bottom:1pt solid #000;border-left:1pt solid #000;border-right:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:SecurityExchangeName" format="ixt-sec:exchnameen" id="f-19">New York Stock Exchange</ix:nonNumeric></span></td></tr></table></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant is an emerging growth company as defined in Rule 405 of the Securities Act of 1933 (&#167; 230.405 of this chapter) or Rule 12b-2 of the Securities Exchange Act of 1934 (&#167; 240.12b-2 of this chapter).</span></div><div style="margin-top:6pt;padding-left:27pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Emerging growth company <ix:nonNumeric contextRef="c-1" name="dei:EntityEmergingGrowthCompany" format="ixt-sec:boolballotbox" id="f-20">&#9744;</ix:nonNumeric></span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act. </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#9744;</span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr style="height:3pt"><td colspan="3" style="border-bottom:3pt double #000;padding:0 1pt"/></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><div id="i06c2c9c552984078898697d48e541b56_7"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:10pt;padding-left:36pt;text-indent:-36pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:8.596%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:89.204%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Item 2.02.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Results of Operations and Financial Condition.</span></td></tr></table></div><div style="margin-bottom:7pt;margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">On October&#160;31, 2025, Proto Labs, Inc. issued a press release announcing its third quarter 2025 financial results. A copy of the press release is furnished as Exhibit 99.1 to this report and incorporated herein by reference.</span></div><div id="i06c2c9c552984078898697d48e541b56_10"></div><div style="-sec-extract:summary;margin-top:10pt;padding-left:36pt;text-indent:-36pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:8.596%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:89.204%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Item 9.01.</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Financial Statements and Exhibits.</span></td></tr></table></div><div style="margin-top:7pt;padding-left:13.5pt;text-indent:-13.5pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(d)</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:1.28pt">Exhibits</span></div><div style="margin-top:7pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:8.596%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:89.204%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">99.1</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="prlb-20251031xexx991.htm">Press release of Proto Labs, Inc. dated </a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="prlb-20251031xexx991.htm">October</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="prlb-20251031xexx991.htm"> 31, 2025</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">104</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Cover Page Interactive Data File (embedded within the Inline XBRL document)</span></td></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><div id="i06c2c9c552984078898697d48e541b56_13"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:20pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">SIGNATURE</span></div><div style="margin-top:30pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">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 hereunto duly authorized.</span></div><div style="margin-top:30pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:6.021%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:45.415%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:2.990%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:29.203%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.871%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Proto Labs, Inc.</span></td><td colspan="3" style="padding:0 1pt"/></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Date:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">October&#160;31, 2025</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">/s/ Daniel Schumacher</span></td><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Daniel Schumacher</span></td><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Chief Financial Officer</span></td><td colspan="3" style="padding:0 1pt"/></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-99.1
<SEQUENCE>2
<FILENAME>prlb-20251031xexx991.htm
<DESCRIPTION>EX-99.1
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2025 Workiva -->
<title>Document</title></head><body><div id="i3d2d2ea704954746893a981fb677f8f1_1"></div><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="margin-top:12pt;text-align:right"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 99.1</font></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:37.233%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:60.567%"></td><td style="width:0.1%"></td></tr><tr style="height:57pt"><td colspan="3" style="padding:0 1pt;vertical-align:top"><div><img alt="logo.jpg" src="logo.jpg" style="height:62px;margin-bottom:5pt;vertical-align:text-bottom;width:242px"></div></td><td colspan="3" style="padding:0 1pt;vertical-align:top"><div style="text-align:right"><img alt="logo1.jpg" src="logo1.jpg" style="height:58px;margin-bottom:5pt;vertical-align:text-bottom;width:128px"></div></td></tr></table></div><div style="margin-top:7pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:16pt;font-weight:700;line-height:120%">Protolabs Reports Financial Results for the Third Quarter of 2025</font></div><div style="margin-top:20pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Record Quarterly Revenue of $135.4 Million, a 7.8% increase Year-Over-Year</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">GAAP Earnings Per Share of $0.30, Non-GAAP Earnings Per Share of $0.47</font></div><div style="margin-top:20pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">MINNEAPOLIS </font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">&#8211;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> October&#160;31, 2025 </font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">&#8211; Proto Labs, Inc. (&#34;Protolabs&#34; or the &#34;Company&#34;) (NYSE&#58; PRLB), the world&#8217;s leading provider of digital manufacturing services, today announced financial results for the third quarter ended September&#160;30, 2025.</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Third Quarter 2025 Financial Highlights</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">&#58;</font></div><div style="margin-top:12pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Revenue was a record $135.4 million, a 7.8% increase compared to revenue of $125.6 million in the third quarter of 2024.</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Revenue fulfilled through digital factories was $105.3 million, a 4.9% increase year-over-year.</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Revenue fulfilled through the Protolabs Network was $30.1 million, a 19.1% increase year-over-year.</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Net income was $7.2 million, or $0.30 per diluted share, compared to $7.2 million, or $0.29 per diluted share, in the third quarter of 2024.</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Non-GAAP net income was $11.4 million, or $0.47 per diluted share, compared to $11.8 million, or $0.47 per diluted share, in the third quarter of 2024. See &#8220;Non-GAAP Financial Measures&#8221; below.</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:112%">&#8220;Protolabs generated another quarter of accelerated growth and record revenue, supported by strong performance in several key end markets, and a substantial increase in revenue per customer contact. I am very encouraged by the progress we&#8217;ve made over the last two quarters&#8212;we have significant momentum into year-end,&#34; commented President and Chief Executive Officer Suresh Krishna. &#34;While it&#8217;s still early, my short time here has strengthened my confidence that our current strategy&#8212;delivering high-quality, custom parts throughout the product lifecycle, from prototyping to production&#8212;is the right one. Together with our teams, I am focused on accelerating profitable growth, and positioning Protolabs for long-term shareholder value creation.&#34;</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Dan Schumacher, Chief Financial Officer, added&#58; &#34;Along with record revenue in the quarter, we continued to demonstrate the strength of our business model by expanding adjusted EBITDA as compared to the second quarter of 2025, continuing our best-in-class cash flow generation, and returning capital to shareholders via repurchases of common stock.&#34;</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Additional Third Quarter 2025 Highlights&#58;</font></div><div style="margin-top:12pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Customer contact information</font></div><div style="padding-left:72pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">&#9702;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.46pt">Protolabs served 21,252 customer contacts during the quarter.</font></div><div style="padding-left:72pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">&#9702;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.46pt">Revenue per customer contact increased 14.1% year-over-year to $6,370. </font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">EBITDA was $17.4 million. See &#8220;Non-GAAP Financial Measures&#8221; below.</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Adjusted EBITDA was $21.1 million, or 15.6% of revenue. See &#34;Non-GAAP Financial Measures&#34; below.</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">We generated $29.1 million in cash from operations.</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Cash and investments balance was $138.4 million as of September&#160;30, 2025.</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Fourth Quarter 2025 Outlook</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">In the fourth quarter of 2025, the Company expects to generate revenue between $125.0 million and $133.0 million.</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">The Company expects fourth quarter 2025 diluted net income per share between $0.12 and $0.20, and non-GAAP diluted net income per share between $0.30 and $0.38. See &#34;Non-GAAP Financial Measures&#34; below.</font></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Non-GAAP Financial Measures</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">The Company has included non-GAAP revenue growth by region and by service line that excludes the impact of changes in foreign currency exchange rates (collectively, &#8220;non-GAAP revenue growth&#8221;). Management believes these metrics, when viewed in conjunction with the comparable GAAP metrics, are useful in evaluating the underlying business trends and ongoing operating performance of the Company.</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">The Company has included earnings before interest, taxes, depreciation and amortization (&#8220;EBITDA&#8221;) and EBITDA, adjusted for stock-based compensation expense, unrealized (gain) loss on foreign currency, CEO transition costs and costs related to exit and disposal activities (collectively, &#8220;Adjusted EBITDA&#8221;), in this press release to provide investors with additional information regarding the Company&#8217;s financial results. The Company has also included earnings before interest, taxes, depreciation and amortization margin (&#8220;EBITDA margin&#8221;) and EBITDA margin, adjusted for stock-based compensation expense, unrealized (gain) loss on foreign currency, CEO transition costs and costs related to exit and disposal activities (collectively, &#8220;Adjusted EBITDA margin&#8221;), in this press release to provide investors with additional information regarding the Company&#8217;s financial results.</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">The Company has included non-GAAP gross margin, adjusted for stock-based compensation expense and amortization expense, in this press release to provide investors with additional information regarding the Company&#8217;s financial results.</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">The Company has included non-GAAP operating margin, adjusted for stock-based compensation expense, amortization expense, CEO transition costs and costs related to exit and disposal activities (collectively, &#8220;non-GAAP operating margin&#8221;), in this press release to provide investors with additional information regarding the Company&#8217;s financial results.</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">The Company has included non-GAAP net income and non-GAAP net income per share, in each case, adjusted for stock-based compensation expense, amortization expense, unrealized (gain) loss on foreign currency, CEO transition costs and costs related to exit and disposal activities (collectively, &#8220;non-GAAP net income&#8221;), in this press release to provide investors with additional information regarding the Company&#8217;s financial results.</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">The Company has provided below reconciliations of GAAP to non-GAAP net income, non-GAAP net income per share, non-GAAP gross margin, non-GAAP operating margin, non-GAAP revenue growth by region and by service line, and Adjusted EBITDA and Adjusted EBITDA margin, the most directly comparable measures calculated and presented in accordance with GAAP. These non-GAAP measures are used by the Company&#8217;s management and board of directors to understand and evaluate operating performance and trends, provide useful measures for period-to-period comparisons of the Company&#8217;s business, and in determining executive and senior management incentive compensation. Accordingly, the Company believes that these non-GAAP measures provide useful information to investors and others in understanding and evaluating operating results in the same manner as our management and board of directors. These non-GAAP financial measures should not be considered a substitute for, or superior to, financial measures calculated in accordance with GAAP. These non-GAAP financial measures exclude significant expenses and income that are required by GAAP to be recorded in our condensed consolidated financial statements and are subject to inherent limitations. Investors should review the reconciliations of non-GAAP financial measures to the comparable GAAP financial measures that are included in this press release.</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Conference Call</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">The Company has scheduled a conference call to discuss its third quarter 2025 financial results and fourth quarter 2025 outlook today, October&#160;31, 2025 at 8&#58;30 a.m. EDT. To access the call in the U.S. please dial 877-709-8150 or outside the U.S. dial 201-689-8354 at least five minutes prior to the 8&#58;30 a.m. EDT start time. No participant code is required. A simultaneous webcast of the call and accompanying presentation will be available via the investor relations section of the Protolabs website and the following link&#58; https&#58;&#47;&#47;edge.media-server.com&#47;mmc&#47;p&#47;mp2aa5du&#47;. A replay will be available for 14 days following the call on the investor relations section of the Protolabs website.</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">About Protolabs</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Protolabs is the world&#8217;s fastest manufacturing service enabling companies across every industry to streamline production of quality parts throughout the entire product life cycle. From custom prototyping to end-use production, we support product developers, engineers, and supply chain teams along every phase of their manufacturing journey. Get started now at protolabs.com.</font></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Forward-Looking Statements</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Statements contained in this press release regarding matters that are not historical or current facts are &#8220;forward-looking statements&#8221; within the meaning of The Private Securities Litigation Reform Act of 1995. These statements involve known and unknown risks, uncertainties and other factors which may cause the results of Protolabs to be materially different than those expressed or implied in such statements. Certain of these risk factors and others are described in the &#8220;Risk Factors&#8221; section within reports filed with the SEC. Other unknown or unpredictable factors also could have material adverse effects on Protolabs&#8217; future results. The forward-looking statements included in this press release are made only as of the date hereof. Protolabs cannot guarantee future results, levels of activity, performance or achievements. Accordingly, you should not place undue reliance on these forward-looking statements. Finally, Protolabs expressly disclaims any intent or obligation to update any forward-looking statements to reflect subsequent events or circumstances.</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Source&#58; Proto Labs, Inc.</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Investor Relations Contacts&#58;</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Protolabs</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Ryan Johnsrud, 612-225-4873</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Manager &#8211; Investor Relations and Corporate Development</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">ryan.johnsrud&#64;protolabs.com</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Gateway Group, Inc.</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">949-574-3860</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">PRLB&#64;gateway-grp.com </font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Media Contact&#58;</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Protolabs</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Brent Renneke, 763-479-7704</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Marketing Communications Manager</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">brent.renneke&#64;protolabs.com</font></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><div id="i3d2d2ea704954746893a981fb677f8f1_4"></div><hr style="page-break-after:always"><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Proto Labs, Inc.</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Condensed Consolidated Balance Sheets</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands)</font></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:70.112%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.990%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.992%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">September 30,<br>2025</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">December 31,<br>2024</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">(Unaudited)</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Assets</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Current assets</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents</font></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">104,422&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">89,071&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Short-term marketable securities</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">14,817&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">14,019&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable, net</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">77,790&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">66,504&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Inventory</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">14,073&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">12,305&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Income taxes receivable</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,681&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,906&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">10,009&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">10,049&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total current assets</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">225,792&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">194,854&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment, net</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">211,325&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">227,263&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">273,991&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">273,991&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Other intangible assets, net</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">19,539&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">21,422&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Long-term marketable securities</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">19,149&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">17,773&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease assets</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,015&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,993&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease assets</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">491&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">692&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term assets</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,553&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,524&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total assets</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">756,855&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">743,512&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities and shareholders' equity</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Current liabilities</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable</font></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">17,388&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">15,504&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Accrued compensation</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">23,268&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">16,550&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Accrued liabilities and other</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">27,831&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">19,621&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Current operating lease liabilities</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">890&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1,287&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Current finance lease liabilities</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">365&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">309&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total current liabilities</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">69,742&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">53,271&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Long-term operating lease liabilities</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1,188&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1,633&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Long-term finance lease liabilities</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">287&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Long-term deferred tax liabilities</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">16,038&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">13,565&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">5,168&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,605&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Shareholders' equity</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">664,719&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">670,151&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 32.5pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total liabilities and shareholders' equity</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">756,855&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">743,512&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td></tr><tr style="height:15pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><div id="i3d2d2ea704954746893a981fb677f8f1_7"></div><hr style="page-break-after:always"><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Proto Labs, Inc.</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Condensed Consolidated Statements of Operations</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands, except share and per share amounts)</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</font></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:38.596%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.990%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.990%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.055%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br>September 30,</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br>September 30,</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</font></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Injection Molding</font></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">47,770&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">46,831&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">143,908&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">148,574&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">CNC Machining</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">63,043&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">53,327&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">177,831&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">154,498&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">3D Printing</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">20,082&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">21,437&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">61,491&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">64,300&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Sheet Metal</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,262&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">3,743&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">12,776&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">11,218&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Other Revenue</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">209&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">281&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">628&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">550&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total Revenue</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">135,366&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">125,619&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">396,634&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">379,140&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Cost of revenue</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">74,073&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">68,389&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">219,869&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">207,897&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Gross profit</font></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">61,293&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">57,230&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">176,765&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">171,243&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Operating expenses</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Marketing and sales</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">24,574&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">22,619&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">73,054&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">69,070&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Research and development</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">10,705&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">9,772&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">32,487&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">31,600&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">General and administrative</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">17,163&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">16,259&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">52,763&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">49,167&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Costs related to exit and disposal activities</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">41&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">151&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total operating expenses</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">52,483&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">48,650&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">158,455&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">149,837&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Income from operations</font></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">8,810&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">8,580&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">18,310&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">21,406&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Other income, net</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1,441&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1,288&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,600&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">3,548&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Income before income taxes</font></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">10,251&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">9,868&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">22,910&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">24,954&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Provision for income taxes</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">3,035&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,679&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">7,668&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">7,957&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Net income</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">7,216&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">7,189&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">15,242&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">16,997&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Net income per share&#58;</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Basic</font></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.30&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.29&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.64&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.67&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Diluted</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.30&#160;</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.29&#160;</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.63&#160;</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.67&#160;</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Shares used to compute net income per share&#58;</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Basic</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">23,889,157</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">24,980,536</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">23,974,054</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">25,304,985</font></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Diluted</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">24,191,039</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">25,022,485</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">24,249,669</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">25,382,280</font></td></tr><tr style="height:14pt"><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><div id="i3d2d2ea704954746893a981fb677f8f1_10"></div><hr style="page-break-after:always"><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Proto Labs, Inc.</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Condensed Consolidated Statements of Cash Flows</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands)</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</font></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.930%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.083%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br>September 30,</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Operating activities</font></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Net income</font></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">15,242&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">16,997&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Adjustments to reconcile net income to net cash provided by operating activities&#58;</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">25,693&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">26,984&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Stock-based compensation expense</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">11,928&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">12,716&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Deferred taxes</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,355&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(6,140)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Interest on finance lease obligations</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">16&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">26&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Loss on impairment of equipment</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">256&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Impairments related to exit and closure of facilities</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">448&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Loss (gain) on disposal of property and equipment</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">16&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(24)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Other</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(179)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">103&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Changes in operating assets and liabilities</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,534&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">9,617&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Net cash provided by operating activities</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">58,053&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">60,535&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Investing activities</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Purchases of property, equipment and other capital assets</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(6,792)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(8,339)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Proceeds from sales of property, equipment and other capital assets</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">811&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">34&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Purchases of marketable securities</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(13,553)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(18,087)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Proceeds from call redemptions and maturities of marketable securities</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">11,730&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">15,709&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Net cash used in investing activities</font></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(7,804)</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(10,683)</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Financing activities</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Proceeds from issuance of common stock from equity plans</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,195&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,094&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Purchases of shares withheld for tax obligations</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(3,119)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(1,920)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Repurchases of common stock</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(36,732)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(45,958)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Principal repayments of finance lease obligations</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(231)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(220)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Net cash used in financing activities</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(35,887)</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(46,004)</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Effect of exchange rate changes on cash and cash equivalents</font></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">989&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">235&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Net increase in cash and cash equivalents</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">15,351&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,083&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Cash and cash equivalents, beginning of period</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">89,071&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">83,790&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Cash and cash equivalents, end of period</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">104,422&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">87,873&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:3pt double #000;padding:0 1pt"></td></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><div id="i3d2d2ea704954746893a981fb677f8f1_13"></div><hr style="page-break-after:always"><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Proto Labs, Inc.</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Reconciliation of GAAP to Non-GAAP Net Income and Non-GAAP Net Income per Share</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands, except share and per share amounts)</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</font></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:40.415%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.054%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Three Months Ended<br>September 30,</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Nine Months Ended<br>September 30,</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Non-GAAP net income, adjusted for stock-based compensation expense, amortization expense, unrealized (gain) loss on foreign currency, CEO transition costs and costs related to exit and disposal activities</font></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">GAAP net income</font></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">7,216&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">7,189&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">15,242&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">16,997&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Add back&#58;</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Stock-based compensation expense</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">3,677&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,196&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">11,928&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">12,716&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Amortization expense</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">935&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">888&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,770&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,796&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Unrealized (gain) loss on foreign currency</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(2)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">174&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(316)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">323&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">CEO transition costs</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">14&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1,376&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Costs related to exit and disposal activities</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">41&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">151&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total adjustments </font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">1</font></div></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,665&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">5,258&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">15,909&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">15,835&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Income tax benefits on adjustments </font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">2</font></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(500)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(627)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(1,700)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(1,066)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Non-GAAP net income</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">11,381&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">11,820&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">29,451&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">31,766&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Non-GAAP net income per share&#58;</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Basic</font></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.48&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.47&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1.23&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1.26&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Diluted</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.47&#160;</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.47&#160;</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1.21&#160;</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1.25&#160;</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Shares used to compute non-GAAP net income per share&#58;</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Basic</font></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">23,889,157</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">24,980,536</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">23,974,054</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">25,304,985</font></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Diluted</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">24,191,039</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">25,022,485</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">24,249,669</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">25,382,280</font></td></tr><tr style="height:14pt"><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td></tr></table></div><div style="margin-top:6pt;padding-left:9pt;text-indent:-9pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">1</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:5.75pt">Stock-based compensation expense, amortization expense, unrealized (gain) loss on foreign currency, CEO transition costs and costs related to exit and disposal activities were included in the following GAAP consolidated statement of operations categories&#58;</font></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:40.415%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.054%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br>September 30,</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br>September 30,</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Cost of revenue</font></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">781&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">817&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,350&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,428&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Marketing and sales</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">837&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">727&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,423&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,378&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Research and development</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">764&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">671&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,124&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,031&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">General and administrative</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,244&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,869&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">9,177&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">8,675&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Costs related to exit and disposal activities</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">41&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">151&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total operating expenses</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">3,886&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,267&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">13,875&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">13,084&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Other income, net</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(2)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">174&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(316)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">323&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total adjustments</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,665&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">5,258&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">15,909&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">15,835&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td></tr></table></div><div style="margin-top:1pt;padding-left:9pt;text-indent:-9pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">2</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:4pt">For the three and nine months ended September&#160;30, 2025 and 2024, income tax effects were calculated using the effective tax rate for the relevant jurisdictions. The Company's non-GAAP tax rates differ from its GAAP tax rates due primarily to the mix of activity incurred in domestic and foreign tax jurisdictions and removing effective tax rate benefits from stock-based compensation activity in the respective period.</font></div><div style="margin-bottom:1pt;margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:9pt"><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><div id="i3d2d2ea704954746893a981fb677f8f1_16"></div><hr style="page-break-after:always"><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Proto Labs, Inc.</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Reconciliation of GAAP to Non-GAAP Gross Margin</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands)</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</font></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:40.415%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.054%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br>September 30,</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br>September 30,</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">135,366&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">125,619&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">396,634&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">379,140&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Gross profit</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">61,293&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">57,230&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">176,765&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">171,243&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">GAAP gross margin</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">45.3</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">45.6</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">44.6</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">45.2</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Add back&#58;</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Stock-based compensation expense</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">439&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">474&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1,323&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1,401&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Amortization expense</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">342&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">343&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1,027&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1,027&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total adjustments</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">781&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">817&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,350&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,428&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Non-GAAP gross profit</font></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">62,074&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">58,047&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">179,115&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">173,671&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Non-GAAP gross margin</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">45.9</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">46.2</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">45.2</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">45.8</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><div id="i3d2d2ea704954746893a981fb677f8f1_19"></div><hr style="page-break-after:always"><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Proto Labs, Inc.</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Reconciliation of GAAP to Non-GAAP Operating Margin</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands)</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</font></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:40.415%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.054%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br>September 30,</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br>September 30,</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">135,366&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">125,619&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">396,634&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">379,140&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Income from operations</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">8,810&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">8,580&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">18,310&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">21,406&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">GAAP operating margin</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">6.5</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">6.8</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4.6</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">5.6</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Add back&#58;</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Stock-based compensation expense</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">3,677&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,196&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">11,928&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">12,716&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Amortization expense</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">935&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">888&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,770&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,796&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">CEO transition costs</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">14&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1,376&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Costs related to exit and disposal activities</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">41&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">151&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total adjustments</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,667&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">5,084&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">16,225&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">15,512&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Non-GAAP income from operations</font></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">13,477&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">13,664&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">34,535&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">36,918&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Non-GAAP operating margin</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">10.0</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">10.9</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">8.7</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">9.7</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td></tr><tr style="height:15pt"><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><div id="i3d2d2ea704954746893a981fb677f8f1_22"></div><hr style="page-break-after:always"><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Proto Labs, Inc.</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Reconciliation of GAAP Net Income to EBITDA and Adjusted EBITDA</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands)</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</font></div><div style="margin-top:12pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:48.310%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.302%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.324%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.302%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.324%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.006%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.324%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.008%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br>September 30,</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br>September 30,</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">135,366&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">125,619&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">396,634&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">379,140&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">GAAP net income</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">7,216&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">7,189&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">15,242&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">16,997&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">GAAP net income margin</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">5.3</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">5.7</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">3.8</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4.5</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Add back&#58;</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Amortization expense</font></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">935&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">888&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,770&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,796&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation expense</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">7,494&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">8,021&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">22,923&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">24,188&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Interest income, net</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(1,281)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(1,287)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(3,532)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(3,548)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Provision for income taxes</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">3,035&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2,679&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">7,668&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">7,957&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">EBITDA</font></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">17,399&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">17,490&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">45,071&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">48,390&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">EBITDA Margin</font></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">12.9</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">13.9</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">11.4</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">12.8</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Add back&#58;</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Stock-based compensation expense</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">3,677&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,196&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">11,928&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">12,716&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Unrealized (gain) loss on foreign currency</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(2)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">174&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(316)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">323&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">CEO transition costs</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">14&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1,376&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 28pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Costs related to exit and disposal activities</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">41&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">151&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total adjustments</font></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">3,730&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,370&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">13,139&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">13,039&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Adjusted EBITDA</font></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">21,129&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">21,860&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">58,210&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">61,429&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Adjusted EBITDA Margin</font></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">15.6</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">17.4</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">14.7</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">16.2</font></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><div id="i3d2d2ea704954746893a981fb677f8f1_25"></div><hr style="page-break-after:always"><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Proto Labs, Inc.</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Comparison of GAAP to Non-GAAP Revenue Growth by Region</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands)</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</font></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:20.415%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.960%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.960%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.960%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.960%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.964%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr style="height:26pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Three Months Ended<br>September 30, 2025</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Three Months Ended<br>September 30, 2024</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">%</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Change</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:700;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">2</font></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">% Change</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Organic</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:700;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">3</font></div></td></tr><tr style="height:27pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">GAAP</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Foreign</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Currency</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:700;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">1</font></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Non-GAAP</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">GAAP</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Revenues</font></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">United States</font></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">109,361&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">109,361&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">99,571&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">9.8</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">9.8</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Europe</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">26,005&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(1,226)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">24,779&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">26,048&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(0.2)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(4.9)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total revenue</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">135,366&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(1,226)</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">134,140&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">125,619&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">7.8</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">6.8</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr style="height:26pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Nine Months Ended<br>September 30, 2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Nine Months Ended<br>September 30, 2024</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">%</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Change</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:700;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">2</font></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">% Change</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Organic</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:700;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">3</font></div></td></tr><tr style="height:26pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">GAAP</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Foreign</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Currency</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:700;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">1</font></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Non-GAAP</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">GAAP</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Revenues</font></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">United States</font></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">320,340&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">320,340&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">299,593&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">6.9</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">6.9</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Europe</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">76,294&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(2,055)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">74,239&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">79,547&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(4.1</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%)</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(6.7</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%)</font></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total revenue</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">396,634&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(2,055)</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">394,579&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">379,140&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4.6</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4.1</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td></tr><tr style="height:15pt"><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td></tr></table></div><div><font><br></font></div><div style="padding-left:9pt;text-indent:-9pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">1</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:4pt">Revenue for the three and nine months ended September&#160;30, 2025 has been recalculated using 2024 foreign currency exchange rates in effect during comparable periods to provide information useful in evaluating the underlying business trends excluding the impact of changes in foreign currency exchange rates.</font></div><div style="margin-bottom:6pt;margin-top:6pt;padding-left:9pt;text-indent:-9pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">2</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:4pt">This column presents the percentage change from GAAP revenue for the three and nine months ended September&#160;30, 2024 to GAAP revenue for the three and nine months ended September&#160;30, 2025.</font></div><div style="padding-left:9pt;text-indent:-9pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">3</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:4pt">This column presents the percentage change from GAAP revenue for the three and nine months ended September&#160;30, 2024 to non-GAAP revenue for the three and nine months ended September&#160;30, 2025 (as recalculated using the foreign currency exchange rates in effect during the three and nine months ended September&#160;30, 2024) in order to provide a constant-currency comparison.</font></div><div style="margin-bottom:1pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:9pt"><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><div id="i3d2d2ea704954746893a981fb677f8f1_28"></div><hr style="page-break-after:always"><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Proto Labs, Inc.</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Comparison of GAAP to Non-GAAP Revenue Growth by Service Line</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands)</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</font></div><div style="margin-top:12pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:20.415%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.960%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.960%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.960%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.960%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.964%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr style="height:26pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Three Months Ended<br>September 30, 2025</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br>September 30, 2024</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">%</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Change</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:700;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">2</font></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">% Change</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Organic</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:700;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">3</font></div></td></tr><tr style="height:26pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">GAAP</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Foreign</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Currency</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:700;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">1</font></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Non-GAAP</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">GAAP</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Revenues</font></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Injection Molding</font></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">47,770&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(358)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">47,412&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">46,831&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">2.0</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">1.2</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">CNC Machining</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">63,043&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(667)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">62,376&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">53,327&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">18.2&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">17.0&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">3D Printing</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">20,082&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(174)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">19,908&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">21,437&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(6.3)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(7.1)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Sheet Metal</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,262&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(23)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4,239&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">3,743&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">13.9&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">13.3&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Other Revenue</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">209&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(4)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">205&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">281&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(25.6)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(27.0)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total revenue</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">135,366&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(1,226)</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">134,140&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">125,619&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">7.8</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">6.8</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr style="height:26pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Nine Months Ended<br>September 30, 2025</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br>September 30, 2024</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">%</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Change</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:700;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">2</font></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">% Change</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Organic</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:700;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">3</font></div></td></tr><tr style="height:26pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">GAAP</font></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Foreign</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Currency</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:700;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">1</font></div></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Non-GAAP</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">GAAP</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Revenues</font></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Injection Molding</font></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">143,908&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(706)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">143,202&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">148,574&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(3.1</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%)</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(3.6</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%)</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">CNC Machining</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">177,831&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(981)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">176,850&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">154,498&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">15.1&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">14.5&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">3D Printing</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">61,491&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(336)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">61,155&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">64,300&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(4.4)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(4.9)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Sheet Metal</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">12,776&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(30)</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">12,746&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">11,218&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">13.9&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">13.6&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Other Revenue</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">628&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(2)</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">626&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">550&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">14.2&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">13.8&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total revenue</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">396,634&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">(2,055)</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">394,579&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">379,140&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4.6</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">4.1</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">%</font></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td></tr></table></div><div><font><br></font></div><div style="padding-left:9pt;text-indent:-9pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">1</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:4pt">Revenue for the three and nine months ended September&#160;30, 2025 has been recalculated using 2024 foreign currency exchange rates in effect during comparable periods to provide information useful in evaluating the underlying business trends excluding the impact of changes in foreign currency exchange rates.</font></div><div style="margin-bottom:6pt;margin-top:6pt;padding-left:9pt;text-indent:-9pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">2</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:4pt">This column presents the percentage change from GAAP revenue for the three and nine months ended September&#160;30, 2024 to GAAP revenue for the three and nine months ended September&#160;30, 2025.</font></div><div style="padding-left:9pt;text-indent:-9pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">3</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:4pt">This column presents the percentage change from GAAP revenue for the three and nine months ended September&#160;30, 2024 to non-GAAP revenue for the three and nine months ended September&#160;30, 2025 (as recalculated using the foreign currency exchange rates in effect during the three and nine months ended September&#160;30, 2024) in order to provide a constant-currency comparison.</font></div><div style="margin-bottom:1pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:9pt"><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><div id="i3d2d2ea704954746893a981fb677f8f1_31"></div><hr style="page-break-after:always"><div style="min-height:45pt;width:100%"><div><font><br></font></div></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Proto Labs, Inc.</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Customer Contact Information</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands, except customer contacts and per customer contact amounts)</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</font></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:37.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.051%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.445%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.406%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.054%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended<br>September 30,</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Nine Months Ended<br>September 30,</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2025</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">2024</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">135,366&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">125,619&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">396,634&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">379,140&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Customer contacts</font></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">21,252</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">22,511</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">41,873</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">43,671</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Revenue per customer contact</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">1</font></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">6,370&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">5,580&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">9,472&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">8,682&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td></tr></table></div><div style="padding-left:9pt"><font><br></font></div><div style="padding-left:9pt;text-indent:-9pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">1</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:4pt">Revenue per customer contact is calculated using the revenue recognized during the respective period divided by the actual number of customer contacts served during the same period. Customer contacts are product developers, engineers, procurement and supply chain professionals and other individuals who place an order, and that order is shipped and invoiced during the period.  The Company believes revenue per customer contact is useful to investors in evaluating the underlying business trends and ongoing operating performance of the Company.</font></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:9pt"><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td></tr></table></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Proto Labs, Inc.</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Reconciliation of GAAP to Non-GAAP Guidance</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</font></div><div style="text-align:center"><font><br></font></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.696%"><tr><td style="width:1.0%"></td><td style="width:76.103%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.994%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.407%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.996%"></td><td style="width:0.1%"></td></tr><tr style="height:15pt"><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Q4 2025 Outlook</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">Low</font></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">High</font></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">GAAP diluted net income per share</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.12&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.20&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Add back&#58;</font></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Stock-based compensation expense</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.14&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.14&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Amortization expense</font></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.03&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.03&#160;</font></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Unrealized (gain) loss on foreign currency</font></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.00&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.00&#160;</font></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Total adjustments</font></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.18&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.18&#160;</font></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Non-GAAP diluted net income per share</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.30&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">$</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">0.38&#160;</font></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:3pt double #000;padding:0 1pt"></td></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>3
<FILENAME>prlb-20251031.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:74a164a7-7862-48b2-a067-29aa23e6f98a,g:7fd720db-9a8d-4aca-a883-236a5718004e-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:prlb="http://www.prlb.com/20251031" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.prlb.com/20251031">
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei/2025" schemaLocation="https://xbrl.sec.gov/dei/2025/dei-2025.xsd"/>
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="prlb-20251031_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="prlb-20251031_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="Cover" roleURI="http://www.prlb.com/role/Cover">
        <link:definition>0000001 - Document - Cover</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xs:appinfo>
  </xs:annotation>
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>4
<FILENAME>prlb-20251031_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:74a164a7-7862-48b2-a067-29aa23e6f98a,g:7fd720db-9a8d-4aca-a883-236a5718004e-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel"/>
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:label id="lab_dei_SolicitingMaterial_8fa0634b-0d76-4937-b8f8-caff3066635f_terseLabel_en-US" xlink:label="lab_dei_SolicitingMaterial" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Soliciting Material</link:label>
    <link:label id="lab_dei_SolicitingMaterial_label_en-US" xlink:label="lab_dei_SolicitingMaterial" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Soliciting Material</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SolicitingMaterial" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_SolicitingMaterial"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_SolicitingMaterial" xlink:to="lab_dei_SolicitingMaterial" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_WrittenCommunications_5ab8b296-02c0-4ddb-9944-46280295d5de_terseLabel_en-US" xlink:label="lab_dei_WrittenCommunications" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Written Communications</link:label>
    <link:label id="lab_dei_WrittenCommunications_label_en-US" xlink:label="lab_dei_WrittenCommunications" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Written Communications</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_WrittenCommunications" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_WrittenCommunications"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_WrittenCommunications" xlink:to="lab_dei_WrittenCommunications" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_LocalPhoneNumber_3ae53310-6681-43e4-81b7-152e870f6966_terseLabel_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Local Phone Number</link:label>
    <link:label id="lab_dei_LocalPhoneNumber_label_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Local Phone Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_LocalPhoneNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LocalPhoneNumber" xlink:to="lab_dei_LocalPhoneNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CoverAbstract_label_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_CoverAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CoverAbstract" xlink:to="lab_dei_CoverAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentPeriodEndDate_e37e2fbb-0fcd-413e-9429-2359fa35491d_terseLabel_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Period End Date</link:label>
    <link:label id="lab_dei_DocumentPeriodEndDate_label_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Period End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentPeriodEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentPeriodEndDate" xlink:to="lab_dei_DocumentPeriodEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_PreCommencementTenderOffer_cc3bda0c-c300-4b71-8da1-34fe6a73ab2b_terseLabel_en-US" xlink:label="lab_dei_PreCommencementTenderOffer" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Pre-commencement Tender Offer</link:label>
    <link:label id="lab_dei_PreCommencementTenderOffer_label_en-US" xlink:label="lab_dei_PreCommencementTenderOffer" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pre-commencement Tender Offer</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_PreCommencementTenderOffer" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_PreCommencementTenderOffer"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_PreCommencementTenderOffer" xlink:to="lab_dei_PreCommencementTenderOffer" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AmendmentFlag_3c8ea8b7-3869-49fe-84ba-e97522af2c99_terseLabel_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:label id="lab_dei_AmendmentFlag_label_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_AmendmentFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag" xlink:to="lab_dei_AmendmentFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCentralIndexKey_65133472-2348-4ecf-a257-7b80f05bb132_terseLabel_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:label id="lab_dei_EntityCentralIndexKey_label_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityCentralIndexKey"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey" xlink:to="lab_dei_EntityCentralIndexKey" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_PreCommencementIssuerTenderOffer_deb924f0-ecc7-4959-bfe5-911ebeabdbce_terseLabel_en-US" xlink:label="lab_dei_PreCommencementIssuerTenderOffer" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Pre-commencement Issuer Tender Offer</link:label>
    <link:label id="lab_dei_PreCommencementIssuerTenderOffer_label_en-US" xlink:label="lab_dei_PreCommencementIssuerTenderOffer" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pre-commencement Issuer Tender Offer</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_PreCommencementIssuerTenderOffer" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_PreCommencementIssuerTenderOffer"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_PreCommencementIssuerTenderOffer" xlink:to="lab_dei_PreCommencementIssuerTenderOffer" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_3b4d16e6-bc41-41fc-b865-6a1383dd7a0f_terseLabel_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_label_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityTaxIdentificationNumber" xlink:to="lab_dei_EntityTaxIdentificationNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_f005616b-94fa-4f0a-8994-9b387d46b32a_terseLabel_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_label_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityEmergingGrowthCompany" xlink:to="lab_dei_EntityEmergingGrowthCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFileNumber_37ef2e55-62f0-4252-bdec-59ca7a978c02_terseLabel_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity File Number</link:label>
    <link:label id="lab_dei_EntityFileNumber_label_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity File Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityFileNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFileNumber" xlink:to="lab_dei_EntityFileNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityRegistrantName_38e3889c-7621-43b5-b2f9-ae304b99114c_terseLabel_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:label id="lab_dei_EntityRegistrantName_label_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityRegistrantName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName" xlink:to="lab_dei_EntityRegistrantName" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_SecurityExchangeName_896ded21-85c1-48fc-aaa6-da2b27c84422_terseLabel_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Security Exchange Name</link:label>
    <link:label id="lab_dei_SecurityExchangeName_label_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Security Exchange Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_SecurityExchangeName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_SecurityExchangeName" xlink:to="lab_dei_SecurityExchangeName" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_TradingSymbol_6caf2832-0b09-472b-912c-7f61137143dc_terseLabel_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
    <link:label id="lab_dei_TradingSymbol_label_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_TradingSymbol"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_TradingSymbol" xlink:to="lab_dei_TradingSymbol" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_b1d38f4c-b473-4373-8515-4396af4e1afa_terseLabel_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_label_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityIncorporationStateCountryCode" xlink:to="lab_dei_EntityIncorporationStateCountryCode" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_Security12bTitle_762d06f7-0f97-4f2f-b9a1-29adc1a87bf6_terseLabel_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:label id="lab_dei_Security12bTitle_label_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_Security12bTitle"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_Security12bTitle" xlink:to="lab_dei_Security12bTitle" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressStateOrProvince_6b42ada4-0df1-432b-aa7c-4b0f723e46f5_terseLabel_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:label id="lab_dei_EntityAddressStateOrProvince_label_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressStateOrProvince"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressStateOrProvince" xlink:to="lab_dei_EntityAddressStateOrProvince" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressPostalZipCode_f268d9ec-9dd0-4734-8d37-400bbd201ecf_terseLabel_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:label id="lab_dei_EntityAddressPostalZipCode_label_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressPostalZipCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressPostalZipCode" xlink:to="lab_dei_EntityAddressPostalZipCode" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressCityOrTown_80b38fb8-0b93-44b5-8855-858d8fc842ed_terseLabel_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:label id="lab_dei_EntityAddressCityOrTown_label_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressCityOrTown"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressCityOrTown" xlink:to="lab_dei_EntityAddressCityOrTown" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressAddressLine1_0ffd6197-5859-4807-b791-c5a3d14711be_terseLabel_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:label id="lab_dei_EntityAddressAddressLine1_label_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressAddressLine1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine1" xlink:to="lab_dei_EntityAddressAddressLine1" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentType_f5eeb85d-ae1f-49a7-8d6d-46a3f123e28c_terseLabel_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:label id="lab_dei_DocumentType_label_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentType"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType" xlink:to="lab_dei_DocumentType" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CityAreaCode_7c5f9809-eb02-410f-85c0-d208e3c8b1d5_terseLabel_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">City Area Code</link:label>
    <link:label id="lab_dei_CityAreaCode_label_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">City Area Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_CityAreaCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CityAreaCode" xlink:to="lab_dei_CityAreaCode" xlink:type="arc" order="1"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>5
<FILENAME>prlb-20251031_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:74a164a7-7862-48b2-a067-29aa23e6f98a,g:7fd720db-9a8d-4aca-a883-236a5718004e-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.prlb.com/role/Cover" xlink:type="simple" xlink:href="prlb-20251031.xsd#Cover"/>
  <link:presentationLink xlink:role="http://www.prlb.com/role/Cover" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_5a9018d1-373f-46e5-8827-c2682dc9c1e2" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentType"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_DocumentType_5a9018d1-373f-46e5-8827-c2682dc9c1e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate_d8a199ad-076c-4c71-a05d-f09fed0754f6" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentPeriodEndDate"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_DocumentPeriodEndDate_d8a199ad-076c-4c71-a05d-f09fed0754f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_5574c1f3-909f-4d96-9008-dfe8d7cc25dc" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityRegistrantName"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_EntityRegistrantName_5574c1f3-909f-4d96-9008-dfe8d7cc25dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode_f3fe34bd-1c08-43f3-a3a3-601129a9aa9e" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_EntityIncorporationStateCountryCode_f3fe34bd-1c08-43f3-a3a3-601129a9aa9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber_924e0f98-557e-43ca-a088-b18c2e5229c5" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityFileNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_EntityFileNumber_924e0f98-557e-43ca-a088-b18c2e5229c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_f6dcde68-18a4-454b-9ffb-3de88cd7e6d2" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_EntityTaxIdentificationNumber_f6dcde68-18a4-454b-9ffb-3de88cd7e6d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1_0e8cba55-a51c-4820-8dfe-4efc71db5438" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressAddressLine1"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_EntityAddressAddressLine1_0e8cba55-a51c-4820-8dfe-4efc71db5438" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown_0e4cde18-ac2c-4db7-bc51-30c16ec4eb37" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressCityOrTown"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_EntityAddressCityOrTown_0e4cde18-ac2c-4db7-bc51-30c16ec4eb37" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince_271bbfb3-b90f-49c2-a25d-9b96d2b56ef9" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressStateOrProvince"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_EntityAddressStateOrProvince_271bbfb3-b90f-49c2-a25d-9b96d2b56ef9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode_234a1214-9b5b-43a9-b532-0cd9644bf6f0" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressPostalZipCode"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_EntityAddressPostalZipCode_234a1214-9b5b-43a9-b532-0cd9644bf6f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode_54abd43a-3f26-4085-b3f9-a895673417a6" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_CityAreaCode"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_CityAreaCode_54abd43a-3f26-4085-b3f9-a895673417a6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber_16203d79-8220-4200-8af3-f2a6953be5a9" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_LocalPhoneNumber"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_LocalPhoneNumber_16203d79-8220-4200-8af3-f2a6953be5a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_WrittenCommunications_1d0a54c8-dd1b-4cec-8628-542d82e78255" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_WrittenCommunications"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_WrittenCommunications_1d0a54c8-dd1b-4cec-8628-542d82e78255" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SolicitingMaterial_b6489209-8405-413a-81ba-a5192e9a135c" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_SolicitingMaterial"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_SolicitingMaterial_b6489209-8405-413a-81ba-a5192e9a135c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_PreCommencementTenderOffer_38e924b5-e879-45b0-8839-8c28aff7e0aa" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_PreCommencementTenderOffer"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_PreCommencementTenderOffer_38e924b5-e879-45b0-8839-8c28aff7e0aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_PreCommencementIssuerTenderOffer_f3c47f57-a2e0-4206-9997-165ffe844cce" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_PreCommencementIssuerTenderOffer"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_PreCommencementIssuerTenderOffer_f3c47f57-a2e0-4206-9997-165ffe844cce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle_6e859f7d-7775-48ff-b34e-4e354af40b2b" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_Security12bTitle"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_Security12bTitle_6e859f7d-7775-48ff-b34e-4e354af40b2b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol_3c91d96b-357a-4256-8763-34a53e74b70f" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_TradingSymbol"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_TradingSymbol_3c91d96b-357a-4256-8763-34a53e74b70f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName_662b5b89-30a5-4837-afaa-0859f860c7f0" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_SecurityExchangeName"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_SecurityExchangeName_662b5b89-30a5-4837-afaa-0859f860c7f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany_39d468ee-7b37-4ac2-97b7-8cfd961f85fd" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_EntityEmergingGrowthCompany_39d468ee-7b37-4ac2-97b7-8cfd961f85fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_cf1c9d4a-a5cf-4b5c-80b6-dd5d0256fd42" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityCentralIndexKey"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_EntityCentralIndexKey_cf1c9d4a-a5cf-4b5c-80b6-dd5d0256fd42" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_09f211e6-daae-4c33-b852-78aebd82d56c" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_AmendmentFlag"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_007042ce-e5d2-4e18-89a0-4c4fddbb3ec3" xlink:to="loc_dei_AmendmentFlag_09f211e6-daae-4c33-b852-78aebd82d56c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>6
<FILENAME>logo.jpg
<TEXT>
begin 644 logo.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  (! 0(! 0(" @(" @(" P4# P,#
M P8$! ,%!P8'!P<&!P<("0L)" @*" <'"@T*"@L,# P,!PD.#PT,#@L,# S_
MVP!# 0(" @,# P8# P8," <(# P,# P,# P,# P,# P,# P,# P,# P,# P,
M# P,# P,# P,# P,# P,# P,# P,# S_P  1"  Y -X# 2(  A$! Q$!_\0
M'0   @$% 0$             !P@&  ,$!0D" ?_$ $80  $# P,"! 0"!0D$
M"P    $" P0%!A$ !R$($@D3,4$4(E%A,G$5%B.!D3-"4F)RH;3!\!<9-$,8
M)"4F.453@J.RT?_$ !L!  (# 0$!               # @0% 08'_\0 ,Q$
M 00! @0$!0(& P       0(#!!$ !2$2,4%1!A-A<10B0I&Q%M$5(R0R@?"A
MP>'_V@ , P$  A$#$0 _ ._"4A)^FOCB@I*N1Z:B.\.]=L['6XJJW-58E-BY
M*$>:<K?6!GL0GU4K'.-(]O5XEUX[UU[]6-JZ14(?QBBTB0ALO5%X<?@0,^4/
MOSC[:TM/T:1+-H%)'4[#[Y@ZOXABP/D62I9^D;G[8W&__5K9/3C2UBO51LU$
M-][-.C$.3'../E'X1]"K'[]#78CQ1K)W7K8IU78=M&>\X4QS,4%,2$^Q\P<)
M_P#=C0EV!\*VJWG447#NM5)#2WU><JF1Y!<DK4H\EY_T&?< $X]2-$S?CPK;
M$W(H@?L]35I5)ILH;,<%V'( ]G&\^O'XD\Y'OK:,?1&?Z9UPK6?J'('_ +&>
M;,WQ'(/Q4=L(2/H/]Q&-1"G-5..VZTMMU#J0M"D*"@H$>H/T^^KV>X_;7,:E
M;@[U^'-7TPJS&?J%L>8 AMY:I5-D<\EEX#+2CZX(21[C3B=-77Q9/4,\Q :D
M_H2X'>/T=,4 MY7OY2O18_@?MK.G>'WV4>>R?,;[IZ>XS9TSQ5&D*^'D MNC
M8I5W]#AWP,C(Y]M>24@@\$@<:B&_&X,C:S9ZX[CAL-2)-&@.S&FW<^6M2$D@
M*P0<'\]*=8W7YO9N1:J:S0=JH=5IA*QYL5+RDK*3A24X4>?35*'I;\A!=;H
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
M(S_ZC>#_ &DJUHI5TJZ%.ORY*W78DQ-J7GYSB9C;9< 0XH/%2?8=CA(4/4@
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
MP<VPMQV\4W(:)2E5]  %1,1!D@!)3CS,=V DE/KP"=;U8"@I*@#CGDYYTI]
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
>HL-JG4NG-!F-':![64 D]H)R<9)]3[ZV^JT89__9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>7
<FILENAME>logo1.jpg
<TEXT>
begin 644 logo1.jpg
M_]C_X  02D9)1@ ! 0$ 7P!?  #_VP!#  ," @," @,# P,$ P,$!0@%!00$
M!0H'!P8(# H,# L*"PL-#A(0#0X1#@L+$!80$1,4%145# \7&!84&!(4%13_
MP  +"  U '4! 1$ _\0 '    04! 0$              P ! @0%!@<)_\0
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
!V0$!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>9
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.3</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cover<br></strong></div></th>
<th class="th"><div>Oct. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">8-K<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Oct. 31,  2025<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">Proto Labs, Inc.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">MN<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-35435<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">41-1939628<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">5540 Pioneer Creek Drive<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Maple Plain<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">MN<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">55359<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">(763)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">479-3680<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_WrittenCommunications', window );">Written Communications</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SolicitingMaterial', window );">Soliciting Material</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_PreCommencementTenderOffer', window );">Pre-commencement Tender Offer</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_PreCommencementIssuerTenderOffer', window );">Pre-commencement Issuer Tender Offer</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock, Par Value $0.001 Per Share<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">PRLB<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSE<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0001443669<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_PreCommencementIssuerTenderOffer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 13e<br> -Subsection 4c<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_PreCommencementIssuerTenderOffer</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_PreCommencementTenderOffer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 14d<br> -Subsection 2b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_PreCommencementTenderOffer</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_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SolicitingMaterial">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 14a<br> -Subsection 12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SolicitingMaterial</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_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_WrittenCommunications">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br> -Section 425<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_WrittenCommunications</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<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>11
<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>13
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.25.3</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>1</ContextCount>
  <ElementCount>22</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>0</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>0</UnitCount>
  <MyReports>
    <Report instance="prlb-20251031.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0000001 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.prlb.com/role/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</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="8-K" isOnlyDei="true" original="prlb-20251031.htm">prlb-20251031.htm</File>
    <File>prlb-20251031.xsd</File>
    <File>prlb-20251031_lab.xml</File>
    <File>prlb-20251031_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="22">http://xbrl.sec.gov/dei/2025</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>15
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "prlb-20251031.htm": {
   "nsprefix": "prlb",
   "nsuri": "http://www.prlb.com/20251031",
   "dts": {
    "inline": {
     "local": [
      "prlb-20251031.htm"
     ]
    },
    "schema": {
     "local": [
      "prlb-20251031.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "https://www.xbrl.org/dtr/type/2024-01-31/types.xsd",
      "https://xbrl.sec.gov/dei/2025/dei-2025.xsd"
     ]
    },
    "labelLink": {
     "local": [
      "prlb-20251031_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "prlb-20251031_pre.xml"
     ]
    }
   },
   "keyStandard": 22,
   "keyCustom": 0,
   "axisStandard": 0,
   "axisCustom": 0,
   "memberStandard": 0,
   "memberCustom": 0,
   "hidden": {
    "total": 2,
    "http://xbrl.sec.gov/dei/2025": 2
   },
   "contextCount": 1,
   "entityCount": 1,
   "segmentCount": 0,
   "elementCount": 23,
   "unitCount": 0,
   "baseTaxonomies": {
    "http://xbrl.sec.gov/dei/2025": 22
   },
   "report": {
    "R1": {
     "role": "http://www.prlb.com/role/Cover",
     "longName": "0000001 - Document - Cover",
     "shortName": "Cover",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "prlb-20251031.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "prlb-20251031.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Amendment Flag",
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "CityAreaCode",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "City Area Code",
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Period End Date",
        "label": "Document Period End Date",
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentType",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Type",
        "label": "Document Type",
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Address, Address Line One",
        "label": "Entity Address, Address Line One",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Address, City or Town",
        "label": "Entity Address, City or Town",
        "documentation": "Name of the City or Town"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressPostalZipCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Address, Postal Zip Code",
        "label": "Entity Address, Postal Zip Code",
        "documentation": "Code for the postal or zip code"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressStateOrProvince": {
     "xbrltype": "stateOrProvinceItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Address, State or Province",
        "label": "Entity Address, State or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Central Index Key",
        "label": "Entity Central Index Key",
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Emerging Growth Company",
        "label": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity File Number",
        "label": "Entity File Number",
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Incorporation, State or Country Code",
        "label": "Entity Incorporation, State or Country Code",
        "documentation": "Two-character EDGAR code representing the state or country of incorporation."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Registrant Name",
        "label": "Entity Registrant Name",
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Tax Identification Number",
        "label": "Entity Tax Identification Number",
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Local Phone Number",
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "dei_PreCommencementIssuerTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "PreCommencementIssuerTenderOffer",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Pre-commencement Issuer Tender Offer",
        "label": "Pre-commencement Issuer Tender Offer",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "dei_PreCommencementTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "PreCommencementTenderOffer",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Pre-commencement Tender Offer",
        "label": "Pre-commencement Tender Offer",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r5"
     ]
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "Security12bTitle",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Title of 12(b) Security",
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r0"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Security Exchange Name",
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_SolicitingMaterial": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "SolicitingMaterial",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Soliciting Material",
        "label": "Soliciting Material",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "TradingSymbol",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trading Symbol",
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "dei_WrittenCommunications": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "WrittenCommunications",
     "presentation": [
      "http://www.prlb.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Written Communications",
        "label": "Written Communications",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r1": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r2": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r3": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "13e",
   "Subsection": "4c"
  },
  "r4": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "14a",
   "Subsection": "12"
  },
  "r5": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "14d",
   "Subsection": "2b"
  },
  "r6": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "425"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>16
<FILENAME>0001443669-25-000011-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001443669-25-000011-xbrl.zip
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
M6*SH<+-V_\^VSQEV*[T8_0%02P,$%     @ 33%?6Y]FCX4""@  ?50  !4
M  !P<FQB+3(P,C4Q,#,Q7VQA8BYX;6S%G%UOVS@6AN_[*[3>FUU@6(L4)9%%
MFT$WTPZ*S;1!DV(&NU@8_$R$VE(@*TWR[Y>2[42*)5FD8O4F<6SZO.<]T>-S
M*%M^^^O]:NG]4/DZR=)W,_C:GWDJ%9E,TJMWLV^7'P&9_7KRZM7;OP'PU[^^
MGGF_9>)VI=+".\T5*Y3T[I+BVBNNE?=GEG]/?C#O?,D*G>4K $ZJIYUF-P]Y
M<G5=>,A'X6[9[M'\38P9C#"+04PB!##A"# _B@&BC*% 19H2]LO5FUC+&/F2
M \J(!)@)!A@A 4!!Q,(8$M_'J@JZ3-+O;\H?G*V59^REZ^K/=[/KHKAY,Y_?
MW=V]ON?Y\G667\V1[P?SW>K9=OG]WOJ[H%H-*:7SZM''I>ND;:$)"^=__7%V
M(:[5BH$D71<L%:7 .GFSKNX\RP0KJJH?S,OK7%'^!7;+0'D7@ @$\/7]6LY.
M7GG>IAQYME1?E?;*W]^^?NJ4I/-RQ3Q55^7_]ESE228O"I879XRKI<F^BE8\
MW*AWLW6RNEFJW7W7N=+M89=YWHA:9DG++&%49OGW+K'YB/1?*-]B/]<72*ZR
M^_FE<NRKZ><72_?2O$*HXR=<DQF=\N: ^I#*J8[=1ZG1J1\_XY<Z++*"+2<X
M+)YD:BDORSO.S*VM3!FHY\6TTMF^=-=25?>%2J7:O%HV0GN)?#<SMQ92)8N+
M;)F(I#!M\0^349ZPY8)HTZ<"S($OXPA@&L2 $TV 8%H'?A1%0:@7Q>,1O5 I
M^':Q$Z\4^L+/+%P5'73F:IW=YF+3UXQDV=,W69P\"7H[Q;?SI\RLB[$\LL7E
MT=QEHA%U6;;E+']N(A,'3#P=Y&OCHG*P5N+U5?9C;IXX+V>?\@8H;U3'=D>X
M^5[IW^>[#%DN#M1JNV(N,C-MW!2@43:=9ZLA5HILR']M4RXC./.R7*K<3(\M
MR3>.FS_SI#"TG6:KU6V:;,:?]2)DW Q]- (^$C[ LISQ*,8 1XCXB(8RE&HH
M1ZT*1T9IJ^DU18?3U%Z5PT"-]FK'E*5-*ZQZK3B1U1YQ,KAZ#=7YZE]HCUBY
MJUB>7V>I^GR[XBI?!$R%00!]$$4$ APH# CD,8 A4B3V=42C:"A=SX,?&:Q*
MSJOTO(W@<*CVZG"8IS'N[%"R,&:%49<#)X+V@DT&3Y>-.C>=:^R1.<U^J/P]
M7Q<Y$\6 XZ2Q_G@'227C_7<G]+^7.41:DW<Z/IJ1)CLX6@W4CXSV!?:'Q>Y,
MU^/F[C<S "U4$"NDN1GZM9  PT !BA$%* BI9D&(*91#7TY;%8[\FOIX_FXC
MZAE5KY0=_LK:7I?#V(QV:X>/M5$KC'K-..'4'G$RK'H-U?'J7VB/V7FNRN%'
MF0S+L)?E9CS_HK5IV4($7#)? !'X9F/ 8PB(9! $6*N(Q0'CB ]EK5OFR, 9
M82!JRMY&VJNTAU/74Z;#Z+V,>3O^W'Q;07C8EA.)/6$GP_&PM3J3 U;;@_G>
MA))EN(]+=K4(!%&,F'U#0"(*,-4*$,P94#0.$6(:"4J'LMB(?&3\'K6\4FPX
M;TWWAQ%S]F1'U4 [5ABUINY$3C/29+"T&JCST;[ 'HD/:9$4#Z<F4,Z6GPQD
M]_]6#XLHA$& 8V1F0$P 5D(#AL(8Q)SXV@\YAP$:BD:KPI$1V6AZ6U&O4O6,
M['!8VNMR&)K1;NW@L39JA5&O&2><VB-.AE6OH3I>_0M'CX2?UNM;E=<G'JDX
M15C[0 D1FV844L"U"@&%4''%N.1B\!GC0V)3CX>;!%YF2MROG/6L.*H>(R=&
MFU*,&1P[/;[$^+@?_&<-D9TV>T;)[N>X=L]+=O])FLB)WI[MWIVGYEC"2$6
M"PP!AEH 3J(01 P&)) R9O[@=U-[E:;IID;<:ZI;G\+NK]?0[OH"57#JLO8%
M<.BV!\R-Z+I=D2?NO@<,[G?A0T]PQ?;#2N5727KU>Y[=%=?F)>*&I0\+[?MA
M!",.*-8,F([, *$4 \H#$DL<\0 Q.VA;=:9!=B?M;;2]K;@ML.V5&HKK:/].
ML-I:=T"UU]@(4-OC3HQIK[E]2/N7NR+Z,5D^OND;*XU4:+HG,E,R1B$"7"H!
M0BI8S&A,A&^Y)7T*/@V,I9YCQZS582AU;NZ<4!MBS &O?0<CF*H%FQBD?1O[
M]+2L<47FJ[I*RC<*T^(S6ZE%0%1 "!4@CE#Y60D> HXT!4P%/N;4;"^QL,.F
M*3 -.D^:7BEJB\^SF@Q%R-VI$T9#33J@U.YD!$[/ DZ,5+N=?:PZUMFC=:'$
M;5YVN7MQ;?YSJCJ,"(VDDH8J$@J#%C';.\98!"1#',6"8(P&=Z0V@2.CM9/T
M=IJ6:+76Y#!:8YW:H65ITNZ#LSU.W#XZVQ9PN@_/]MAI?'RV;YT]6I<Y*Z_,
MNGA8\6RYB 33B 0(^-RG ,?([,,@,MU+1Q &,<2!'-RN&I&/#--6R]N(#8>H
MZ?XP/<Z>[+ 9:,<*E];4G3AI1IH,D%8#=3+:%[@.<I]2D>4W65Z=\K@H6*%.
ML]NTR!].,ZD6',J :"P QW%@YCKS@X0P-+=HQ#16D&G+TQ2]>M.,>8T4?O&J
M)$S5O&TB7IF)[>S77\:AH^"+%<=I,AQ5%X=Q<9#;$=-C?_R)A\E!9O=GRV%/
M<Q\U(>*72;%4"[-QDWZD8^!K&@.LD0:<,EA>3"P%9"3F>O"GW9\'/W97+#6\
M3'L0_8/_T]NIV\^8C\48/E^Z6+1LDI;NG(;+YS9&#9:/P28?*I_;:!LH]]:X
M=L[W4II_V[J"\DM^GF<_$I/H(N(8,<DP\*4N3X68V9*Q6 #,?1VC0.%(AW8M
MLUUHFEZYU:YU@YV^;8?L*-?0UCB^"$X]T<&_0R?L-S>B!78$GKCW]=O;;WH'
MUH\$]CQ;%VSYG^2F&LTTBHBD2@ JI6^V@@$&1 :F _H^YQ+Y4 G+=\_;9":&
M=:/M&7&G8;:U4):@.ML?A^E0Y^Z0MAH;CV@S[,\!M-5:)Y[MJT?">6IN?LDO
ML[MT07QN]IZ< )]3L_?$/ 2$A.9'2"31@F"D!E\PU*$Q,9:E<-E"2FE')FOU
ML032S?4X&@<9=D=QW])X#FLQ?PZ$^Z8Z"6Q9.A*_[:^S)%5PX6LM(VAV@R$)
M*<#$CP&/*00B9(&$.(:0#_ZP:*?*Q AN;WBEMO<E=6V-C3I9@NCJ?AR*@XV[
MX]AF;#R0C:@_!\DV8YU0MBYVOXCVTCQUH4.E. DE8 IJ@"F+S9 :28 C%FAH
M-I6(#'Z_HA[XR/ ]7DE::ME?)UM9/PR7JR$[GH9Y<;H4MI[XJ"M@JT"37_A:
M3[_M>M?&XPY?,E"BE2M6;4)B$6I*? H4]Q' T-?EV^(^,!LUH@)!.)2#3Z[4
M Q\9A&H.*K4LMV,-[X=)<'5D1\) ,W9?KM"2N=MW*]0#3??5"BWI-[Y9H>WQ
M+A3J%35=Y/O)J]T]R>;;*D]>_1]02P,$%     @ 33%?6\U%.^RK!@  UC
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
MVUG67R\>B7>*!PY?W9_H?G1?@S]\]3]02P,$%     @ 33%?6S/-M>%<2
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
MYVXCJINAF^6;H7]6$0]?1XQM.;B08 (7PN4_G>:@3>6ONY@!UE&5,O?%83/
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
MH; <VH#>H2GH/9Z&LQ<CZ IZ3H>D'),8SC,C5C9B;>QGMU$RP[4-3*G^PN4
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
M,#,Q+GAS9%!+ 0(4 Q0    ( $TQ7UN?9H^% @H  'U4   5
M  "  1X1  !P<FQB+3(P,C4Q,#,Q7VQA8BYX;6Q02P$"% ,4    " !-,5];
MS44[[*L&  #6,   %0              @ %3&P  <')L8BTR,#(U,3 S,5]P
M<F4N>&UL4$L! A0#%     @ 33%?6S/-M>%<2   ?7 & !@
M ( !,2(  '!R;&(M,C R-3$P,S%X97AX.3DQ+FAT;5!+!08     !0 % $H!
(  ##:@     !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>prlb-20251031_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2025"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="prlb-20251031.xsd" xlink:type="simple"/>
    <context id="c-1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001443669</identifier>
        </entity>
        <period>
            <startDate>2025-10-31</startDate>
            <endDate>2025-10-31</endDate>
        </period>
    </context>
    <dei:EntityCentralIndexKey contextRef="c-1" id="f-21">0001443669</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag contextRef="c-1" id="f-22">false</dei:AmendmentFlag>
    <dei:DocumentType contextRef="c-1" id="f-1">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate contextRef="c-1" id="f-2">2025-10-31</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName contextRef="c-1" id="f-3">Proto Labs, Inc.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="c-1" id="f-4">MN</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber contextRef="c-1" id="f-5">001-35435</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber contextRef="c-1" id="f-6">41-1939628</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="c-1" id="f-7">5540 Pioneer Creek Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="c-1" id="f-8">Maple Plain</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="c-1" id="f-9">MN</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="c-1" id="f-10">55359</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="c-1" id="f-11">(763)</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="c-1" id="f-12">479-3680</dei:LocalPhoneNumber>
    <dei:WrittenCommunications contextRef="c-1" id="f-13">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial contextRef="c-1" id="f-14">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer contextRef="c-1" id="f-15">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer contextRef="c-1" id="f-16">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle contextRef="c-1" id="f-17">Common Stock, Par Value $0.001 Per Share</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="c-1" id="f-18">PRLB</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="c-1" id="f-19">NYSE</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany contextRef="c-1" id="f-20">false</dei:EntityEmergingGrowthCompany>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
